Part Number Hot Search : 
P4N150 0505E LH002 N4745 567M0 D100L WR300 24C25
Product Description
Full Text Search
 

To Download AD1940YST Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  sigmadsp multichannel 28-bit audio processor ad1940/ad1941 rev. a in fo rmation furn ished by an alog d e v i c e s is believed to be accurate and reliable. how e ver, n o resp on sibili ty is assume d b y a n alog de vices fo r its use, nor for an y i n fri n geme nt s of p a t e nt s or ot h e r ri ght s o f th ird parties th at may result fro m its use . s p ecificatio n s subj ec t to ch an g e witho u t n o tice. no licen s e is g r an te d by implicati o n or ot herwi s e u n der a n y p a t e nt or p a t e nt ri ghts of analog de v i ces. trademarks an d registered tra d ema r ks are the prop erty o f their respective ow ners. one technolog y way, p.o . box 9106, norwood, ma 02062-9106, u.s.a. t e l: 781. 329. 4 700 www.analog.com fax: 781. 461. 31 13 ? 2005 analog de vices, i n c. al l r i ght s r e ser v ed . features 16-channel d i gital a u dio processor accepts sample rates up to 19 2 khz 28-bit 28-bit multiplier with full 56-bit accu mulator fully programmable program ram for cust om program down load parameter r a m allows complete control of 1,024 param e t e rs control port features s a felo a d for transpare n t parameter updates and co mplete mo de a n d memory tra n sfer control target/slew ra m for click-free volume control and dynamic parameter updates double precisi on mode fo r full 56 -bit processing pll for generating mclk from 64 f s , 256 f s , 384 f s , or 512 f s clocks hardware-accelerated dsp co re 21 kb (6, 144 w o rds) data me mory for up to 128 ms of aud i o delay at f s = 4 8 khz flexible seria l data port with i 2 s-compatible, left-justifi ed, and right-justif ied seri al port modes 8- and 16-chan nel tdm input/output modes on-chip voltage regulator for compatibility with 3.3 v and 5 v s y stems programmable low power mode fast start-up a n d boot time from power-on or reset 48-lead lqfp plastic package applic ati o ns automotive so und s y stems digital te levis i o ns home theater s y stems ( d olby digital/dts po stprocessor) multichannel a u dio syst ems mini-compone nt stereos multimedi a audio digital spea ker crossover musical instruments in-seat sound s y stems (a ircraf ts/motor coach e s) func tio n a l block di agram voltage regulator ad1940/ad1941 28 28 dsp core data format: pll serial control interface serial data/ tdm inputs master clock input spi/i 2 c i/o ram rom serial data/ tdm outputs 04607-0-001 2 4 4 2 2 5.23 (single precision) 10.46 (double precision) fi g u r e 1 . general description the ad1940/ad1941 a r e a com p let e 28-b i t, sin g le-c hi p , m u l t i- chan nel a u dio s i g m ad s p ? fo r e q ua li za t i o n , m u lt i b and d y n a mic p r o c e s s i n g , d e l a y c o m p e n s a t i o n , s p e a k e r c o m p e n s a t i o n , a n d i m a g e enh a n c em en t . th e s e al go ri th m s ca n be used t o co m p en- s a te fo r t h e r e a l wo rld limit a t i on s o f sp e a k e rs, am plif iers, and l i s t e n in g en vi r o n m en t s , r e s u l t in g i n a d r a m a t i c im p r o v e m en t o f pe r c e i v e d a u di o q u al i t y . the sig n al p r o c es sin g us ed in t h e ad1940 /ad1941 is co m p a r a b le t o t h a t f o und in hig h en d st udio e q ui p m en t. m o s t o f t h e p r o c essing is do ne in f u l l , 56-b i t do ub le-pr e cisio n m o de, r e s u l t in g in v e r y g o o d , lo w le v e l sig n al p e r f o r m a n c e an d t h e ab s e nc e of l i m i t c y cl e s or i d l e to ne s . t h e dy n a m i c s pro c e s s o r us es a s o phist i c a te d , m u l t i p le- b r e a k p o i n t a l go r i t h m o f te n fo und in hig h e nd b r o a dca s t com p r e ss o r s. the ad1940/ad1941 a r e a f u l l y p r og ra mma b l e ds p . e a sy t o us e s o f t wa r e al l o ws t h e us er t o g r a p hical l y co nf igur e a c u s t o m sig n a l p r o c essing f l o w usin g b l o c ks such as b i q u ad f i l t ers, d y n a - mics p r o c ess o rs , a n d sur r o u n d s o un d p r o c ess o r s . an ex ten s i v e co n t r o l p o r t al lo ws c l ic k-f r e e p a ra m e t e r u p da tes, alo n g wi t h r e ad b a ck c a p a b i li ty f r o m an y p o in t i n t h e a l go r i t h m f l o w . the ad1940/ad1941 s dig i ta l in p u t and o u t p u t p o r t s al lo w a g l ueless co n n e c t i o n to a d cs and d a cs b y m u l t i p le, 2-cha n nel s e ri a l d a ta s t r e a m s o r t d m d a ta s t r e a m s . w h e n i n t d m m o d e , th e ad1940 /ad1941 can in p u t 8 o r 16 c h a nnels o f s e r i al da ta , a nd can o u t p ut 8 o r 16 cha nnels o f s e r i a l d a t a . the i n p u t and o u t p u t p o r t co nf igura t io n s can be individ u al l y s e t. th e ad194 0 is co n t r o l l ed b y a 4-wir e s p i ? p o r t ; th e ad1941 is co n t r o l l ed b y a 2- wir e i 2 c ? b u s. oth e r th a n t h e co n t r o l i n t e rfa c e , th e fun c ti o n s o f t h e tw o p a r t s a r e iden t i cal .
ad1940/ad1941 rev. a | page 2 of 36 table of contents specifications ..................................................................................... 3 digital i/o ..................................................................................... 3 power .............................................................................................. 3 digital timing ............................................................................... 4 pll ................................................................................................. 5 regulator ........................................................................................ 5 temperature range ...................................................................... 5 absolute maximum ratings ............................................................ 6 esd caution .................................................................................. 6 digital timing diagrams ................................................................. 7 pin configuration and function descriptions ............................. 9 features ............................................................................................ 11 pin functions .............................................................................. 12 signal processing ............................................................................ 14 overview ...................................................................................... 14 numeric formats ........................................................................ 14 programming .............................................................................. 14 control port ..................................................................................... 15 overview ...................................................................................... 15 ad1940 spi port ........................................................................ 15 ad1941 i 2 c port ......................................................................... 15 rams and registers ....................................................................... 19 control port addressing ............................................................ 19 parameter ram contents ......................................................... 19 recommended program/parameter loading procedures .... 20 target /sle w r a m ....................................................................... 20 safeload registers ....................................................................... 23 data capture registers .............................................................. 23 dsp core control register ....................................................... 24 ram configuration register ................................................... 25 control port read/write data formats .................................. 25 serial data input/output ports .................................................... 28 serial output control registers ............................................... 30 serial input control register .................................................... 30 initialization .................................................................................... 33 power-up sequence ................................................................... 33 setting master clock/pll mode .............................................. 33 volt age regu l ator ....................................................................... 33 outline dimensions ....................................................................... 35 ordering guide .......................................................................... 35 revision history 4/05rev. 0 to rev. a added ad1941............................................................... universal changes to specifications ............................................................3 changes to pin function descriptions......................................9 changes to features section......................................................11 changes to pin functions section............................................13 addition of ad1940 spi port section .....................................15 added table 13 to table 16 .......................................................18 7/04revision 0: initial version
ad1940/ad1941 rev. a | page 3 of 36 specifications test conditions, unless otherwise noted. table 1. parameter conditions supply voltage (vdd) 2.5 v pll voltage (pll_vdd) 2.5 v output voltage (odvdd) 5.0 v invdd voltage 5.0 v ambient temperature 25c master clock input 3.072 mhz, 64 f s mode load capacitance 50 pf load current 1 ma input voltage, hi 2.4 v input voltage, lo 0.8 v digital i/o vdd = 2.25 v to 2.75 v. specifications measured across ? 40c to 125c (case). table 2. parameter comments min max unit input voltage, hi (v ih ) 2.1 v input voltage, lo (v il ) 0.8 v input leakage (i ih ) 10 a input leakage (i il ) 10 a high level output voltage (v oh ) odvdd = 4.5 v, i oh = 1 ma 3.9 v high level output voltage (v oh ) odvdd = 3.0 v, i oh = 1 ma 2.6 v low level output voltage (v ol ) odvdd = 4.5 v, i ol = 1 ma 1 0.4 v low level output voltage (v ol ) odvdd = 3.0 v, i ol = 1 ma 1 0.3 v input capacitance 5 pf 1 sda is measured with a 3 ma sink current. power table 3. parameter min typ max 1 unit supplies voltage 2.25 2.5 2.75 v digital current 92 155 2 ma pll current 3.5 8 ma digital current, reset 4.5 3 13 3 ma pll current, reset 3 8.5 ma dissipation operation, all supplies 238.8 mw reset, all supplies 10.8 mw 1 maximum specifications are measured across ? 40c to 125c (case) and across vdd = 2.25 v to 2.75 v. 2 measurement running a typical large program that writes to all 16 outputs with 0 db digital sine waves applied to all eight in puts. the end users program may differ. 3 the digital reset current is specified for the given test condit ions. this current scales with the input mclk rate, so higher input clocks draw more current while in reset.
ad1940/ad1941 rev. a | page 4 of 36 digital timing vdd = 2.25 to 2.75 v. specifications measured across C40c to 125c. table 4. digital timing 1 parameter mnemonic comments min max unit master clock, serial data ports, reset mclk period t mp 512 f s mode 36 244 ns mclk period t mp 384 f s mode 48 366 ns mclk period t mp 256 f s mode 73 488 ns mclk period t mp 64 f s mode 291 1953 ns mclk period t mp bypass mode 12 ns mclk duty cycle t mdc bypass mode 40 60 % bclk_in lo pulse width t bil 4 ns bclk_in hi pulse width t bih 2 ns lrclk_in setup t lis to bclk_in rising 12 ns lrclk_in hold t lih from bclk_in rising 0 ns sdata_inx setup t sis to bclk_in rising 3 ns sdata_inx hold t sih from bclk_in rising 2 ns lrclk_outx setup t los slave mode 2 ns lrclk_outx hold t loh slave mode 2 ns bclk_outx falling to lrclk_outx timing skew t ts 2 ns sdata_outx delay t sods slave mode, from bclk_outx falling 17 ns sdata_outx delay t sodm master mode, from bclk_outx falling 17 ns resetb lo pulse width t rlpw 10 ns spi port (ad1940) cclk pulse width lo t ccpl 1 intmclk (14) 2 ns cclk pulse width hi t ccph 1 intmclk (14) 2 ns clatch setup t cls to cclk rising 0 ns clatch hold t clh from cclk rising 2 intmclk + 4 (32) 2 ns clatch pulse width hi t clph 2 intmclk (28) 2 ns cdata setup t cds to cclk rising 0 ns cdata hold t cdh from cclk rising 2 intmclk + 2 (30) 2 ns cout delay t cod from cclk rising 4 intmclk +18 (74) 2 ns i 2 c port (ad1941) scl clock frequency f scl 400 khz scl low t scll 1.3 s scl high t sclh 0.6 s setup time (start condition) t scs relevent for repeated start condition 0.6 s hold time (start condition) t sch first clock generated after this period 0.6 s setup time (stop condition) t ssh 0.6 s data setup time t ds 100 ns sda and scl rise time t sr 300 ns sda and scl fall time t sf 300 ns bus-free time t bft between stop and start 1.3 s 1 all timing specifications are given for the default (i 2 s) states of the serial input control port and the serial output control ports. see ta . ble 37 2 these specifications are based on the inte rnal master clock period in a specific appl ication. in normal operation, the master clock runs at 1,536 f s , so the internal master clock at f s = 48 khz has a 14 ns period. the values in parentheses are the timing values for f s = 48 khz.
ad1940/ad1941 rev. a | page 5 of 36 pll vdd = 2.25 to 2.75 v. specifications measured across C40c to 125c. table 5. parameter min typ max unit lock time 3 20 ms regulator vdd = 2.25 to 2.75 v. specifications measured across C40c to 125c. table 6. parameter min typ max unit vsense output voltage 2.25 2.5 2.68 v temperature range table 7. parameter min typ max unit functionality guaranteed C40 +105 c ambient C40 +125 c case
ad1940/ad1941 r e v. a | pa ge 6 o f 3 6 absolute maximum ratings table 8. parameter min max unit vdd to dgn d C0.3 +3.0 v pll_ vdd to pg nd C0.3 +3.0 v od vdd to dgn d C0.3 +6.0 v invdd to dgnd odvdd +6.0 v digital inputs dgnd C 0.3 invdd + 0.3 v maximum junction temperature 1 3 5 c storage temperature range C65 +150 c soldering (10 sec) 300 c table 9. packa g e characteristics p a r a m e t e r m i n t y p m a x u n i t ja t h ermal resi stance ( j unction - to-ambient) 7 2 c / w jc t h ermal resi stance ( j unction - to-case) 1 9 . 5 c / w s t r e s s es a b o v e t h os e lis t e d u n de r a b s o l u t e m a xi m u m r a t i n g s ma y c a us e p e r m a n en t dama ge t o t h e de vice . this is a s t r e s s ra t i n g onl y a nd f u n c t i o n al op era t io n o f t h e de v i ce a t t h es e o r a n y o t h e r con d i t io n s ab o v e t h o s e i n dica t e d in t h e op era t io nal s e c t io n o f t h is sp e c if ic a t io n is no t im plie d . e x p o sur e t o a b s o l u te max i m u m ra t i ng co ndi t i on s fo r ex ten d e d p e r i o d s ma y a f fe c t de vice r e l i ab i l i t y . esd caution esd (electrostatic discharge) sensitive device. electrosta tic char ges as high as 4000 v readily ac cumulate on the human body and test eq uipment and c a n d i scharge wit h out d e tection. although th is product features proprietary esd protection circ uitry, permanent dama ge may occur on devices subjected to high energy electrostatic di scharge s . ther efore, pro p er esd precautions are rec o m m ended to avoid performan c e degradation or l o ss of functiona l ity.
ad1940/ad1941 r e v. a | pa ge 7 o f 3 6 digital timing diagrams bclk_in lrclk_in sdata_inx left-justified mode lsb sdata_inx i 2 s-justified mode sdata_inx right-justified mode t bih msb msb-1 msb msb 8-bit clocks (24-bit data) 12-bit clocks (20-bit data) 14-bit clocks (18-bit data) 16-bit clocks (16-bit data) t lis t sis t sih t sih t sis t sis t sih t sis t sih t lih t bil 04607-0-013 f i gure 2. s e r i a l inp u t p o r t tim i ng bclk_outx lrclk_outx sdata_outx left-justified mode lsb sdata_outx i 2 s-justified mode sdata_outx right-justified mode t bih msb msb-1 msb msb 8-bit clocks (24-bit data) 12-bit clocks (20-bit data) 14-bit clocks (18-bit data) 16-bit clocks (16-bit data) t los t sdds t sddm t sdds t sddm t sdds t sddm t lch t ts t bil 04607-0-014 f i gure 3. s e r i a l o u t p ut p o r t tim i ng
ad1940/ad1941 r e v. a | pa ge 8 o f 3 6 clatch cclk cdata cout t cls t cds t cdh t cod t ccph t ccpl t clh t clph 04607-0-015 f i g u re 4. a d 19 40 s p i p o r t ti m i ng t tsch t sclh t sr t scll t st t ds sda scl k t tsch t ssh 04607-026 t scs f i g u re 5. a d 19 41 i 2 c p o r t timing mc l k r eset b t mp t rlpw 04607-0-016 f i g u re 6. m a s t er cl ock and r e s e t ti m i ng
ad1940/ad1941 r e v. a | pa ge 9 o f 3 6 pin conf igurations and f u ncti on descriptions 36 35 34 33 32 31 30 29 28 27 26 25 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12 48 47 46 45 44 39 38 37 43 42 41 40 gnd bclk_out1 lrclk_out1 odvdd sdata_out3 sdata_out2 sdata_out1 vdd mclk reserved pll_vdd nc sdata_out0 odvdd bclk_out0 lrclk_out0 gnd vdd pin 1 indicator pll_ctrl0 pll_ctrl1 pll_ctrl2 pll_gnd ad1940 top view (not to scale) v d d s d a t a _ i n 1 s d a t a _ i n 2 s d a t a _ i n 3 c o u t c c l k c l a t c h c d a t a r e s e t b g n d s data_ in0 adr_ s e l gnd vr ef vd riv e vs en se vs up ply invdd s data_ o ut7 sd ata_ out6 odvdd s data _ou t 5 s data_ ou t4 vd d 04607-0-002 lrclk_in bclk_in nc = no connect 36 35 34 33 32 31 30 29 28 27 26 25 13 14 15 16 17 18 19 20 21 22 23 24 1 2 3 4 5 6 7 8 9 10 11 12 48 47 46 45 44 39 38 37 43 42 41 40 gnd bclk_out1 lrclk_out1 odvdd sdata_out3 sdata_out2 sdata_out1 vdd mclk reserved pll_vdd i2c_filt_en sdata_out0 odvdd bclk_out0 lrclk_out0 gnd vdd pin 1 indicator pll_ctrl0 pll_ctrl1 pll_ctrl2 pll_gnd ad1941 top view (not to scale) v dd s da ta_ i n1 sd ata _ i n2 sd ata _in 3 sd a s cl nc nc re s etb gnd s data_ in0 adr_ s e l gnd vr ef vd riv e vs en se vs up ply invdd s data_ o ut7 sd ata_ out6 odvdd s data _ou t 5 s data_ ou t4 vd d 04607-0-011 lrclk_in bclk_in nc = no connect f i g u re 7. 48-l e ad l qfp pin conf ig u r at ion, a d 1 9 4 0 f i g u re 8. 48-l e ad l qfp pin conf ig u r at ion, a d 1 9 4 1 ta ble 10. pi n f u nct i on des c ri pt i o ns pin no. ad19 4 0 a d 1 9 4 1 i/o mnemonic description 1, 25, 37 1, 25, 37 vdd core power. 2 2 in mclk master clock input. 3 3 reserved this pin shou ld be conne cted to ground. 4 4 in pll_ctr l 0 pll control 0. 5 5 in pll_ctr l 1 pll control 1. 6 6 in pll_ctr l 2 pll control 2. 7 7 pll_gnd pll ground. 8 8 pll_vdd pll power. 9 21, 22 nc no connect. 9 i n i 2 c _ f i l t _ e n b i 2 c filter enable, active low. 10 10 in lrclk_in left/right cloc k for serial or tdm data inputs. 11 11 in bclk_in bit clock fo r seri al or tdm data i n puts. 12, 24, 36, 48 12, 24, 36, 48 gnd digital ground. 13 13 vdd core power. 14 14 in sdata_in0 serial data inpu t 0. 15 12 in sdata_in1 serial data inpu t 1. 16 16 in sdata_in2/td m_in1 seri al data inpu t 2/ tdm inpu t 1. 17 17 in sdata_in3/td m_in0 seri al data inpu t 3/ tdm inpu t 0. 18 18 in adr_sel control port address select. 19 out cout spi data output . 20 in cclk clock for spi. 21 in clatch spi data latch.
ad1940/ad1941 rev. a | page 10 of 36 pin no. ad1940 ad1941 i/o mnemonic description 22 in cdata data input for spi. 19 in/out sda i 2 c serial data i/o. 20 in scl i 2 c clock. 23 23 in resetb reset the ad1940/ad1941. 26 26 in/out lrclk_out0 left/right clock output 0. 27 27 in/out bclk_out0 bit clock output 0. 28, 33, 40 28, 33, 40 odvdd power connection for output pins. 29 29 out sdata_out0/tdm_o0 serial data output 0/tdm (16- or 8-channel) output 0. 30 30 out sdata_out1 serial data output 1. 31 31 out sdata_out2 serial data output 2. 32 32 out sdata_out3 serial data output 3. 34 34 in/out lrclk_out1 left/right clock output 1. 35 35 in/out bclk_out1 bit clock output 1. 38 38 out sdata_out4/tdm_o1 serial da ta output 4./tdm (8-channel) output 1. 39 39 out sdata_out5 serial data output 5. 41 41 out sdata_out6 serial data output 6. 42 42 out sdata_out7/dcsout serial data output 7/data capture output. 43 43 invdd input voltage reference. 44 44 in vsupply voltage level input to regulator. usually 3.3 v or 5 v. 45 45 in vsense digital power level. should be tied to vdd. 46 46 out vdrive drive for external pnp transistor. 47 47 out vref reference level for voltage regulator.
ad1940/ad1941 rev. a | page 11 of 36 features the co r e o f th e ad1940/ad19 41 is a 28-b i t ds p (56-b i t, do uble pre c i s i o n ) opt i m i z e d f o r a u d i o pro c e s s i ng . t h e p a r t s pro g r a m r a m can b e lo ade d w i t h a c u sto m p r og ra m a f ter p o w e r - u p . s i g n al p r o c es sing p a ra m e t e rs a r e s t o r ed in a 10 24 lo ca tion p a ra m e ter r a m, w h ich is i n i t ia li ze d o n p o w e r - u p b y a n i n t e r n a l b o o t ro m. n e w val u es a r e wr i t t e n t o t h e p a ram e t e r r a m usin g t h e con t r o l p o r t . th e v a l u es s t o r e d i n t h e p a ramet e r r a m co n t r o l in divid u al sig n al p r o c es sin g b l o c ks, s u c h as iir e q ual i - za t i on f i l t ers, d y na mics p r o c ess o rs, a u dio del a y s , a nd mixer le v e l s. a s a f e lo ad f e a t ur e al lo ws p a ra m e ters t o b e tra n s p a r en tl y up d a t e d w i t h out c a u s i n g cl i c k s on t h e output s i g n a l s . the ta rg et/s le w ram co n t a i n s 64 lo ca tio n s and can be us ed as c h a n n e l v o l u m e co n t r o ls o r f o r o t h e r p a ram e t e r u p da t e s. th ese ra m loca ti o n s tak e a ta r g e t val u e f o r a gi v e n pa ra m e t e r a n d ra m p t h e c u r r en t p a ram e t e r va l u e t o t h e ne w v a l u e usin g a sp e c if ie d t i m e c o n s t a n t and on e o f a s e le c t io n of lin e a r o r loga r i thmic c u r v es. the ad1940/ad1941 co n t ain eig h t indep e nden t da ta ca p t ur e cir c ui ts tha t can be p r og ra mm e d t o ta p t h e sig n al f l o w o f th e p r o c es s o r a t an y p o in t in t h e dsp alg o r i t h m f l o w . six o f t h es e ca p t ur ed sig n als ca n be acces s e d b y r e adin g f r o m the da t a c a p t u r e re g i st e r s t h rou g h t h e c o n t ro l p o r t . t h e re m a i n i n g t w o da ta ca p t ur e r e g i s t ers can b e us e d t o s e n d an y in t e r n al ca p t ur e d s i gn al t o a s t e r eo d i gi tal o u t p u t s i gn al o n p i n s d a t a _ o u t 7 f o r dr i v i n g ex ter n a l d a cs o r dig i t a l a n a l y z ers. the ad1940/ad1941 ha v e a s o p h is tic a t e d con t r o l p o r t tha t supp or t s c o m p l e te re a d / w r i te c a p a b i l i t y of a l l me mor y lo ca tion s. f i v e c o n t r o l r e g i s t ers (c o r e , r a m co nf igura t io n, s e r i al o u t p u t 0 t o 7, s e r i al o u t p u t 8 t o 15, a nd s e r i al in p u t) a r e prov i d e d to of f e r c o m p l e te c o n t ro l of t h e ch ip s c o n f i g u r a t i o n a nd s e r i a l mo de s. h a ndsha k i n g is in cl ud e d fo r e a s e o f m e mo r y u p lo ads/do wnl o ads. th e ad19 40 is s p i-con t r o l l ed an d t h e ad1941 is co n t r o l l ed b y a n i 2 c b u s. the ad1940/ad1941 ha v e v e r y f l exi b le s e r i al da ta in p u t/o u t p u t p o r t s tha t al lo w g l ue les s in t e r c onn e c t io n t o a var i ety o f ad cs, d a c s , g e n e r a l - p u r p o s e d s p s , s / p d i f r e c e i v e r s a n d t r a n s - mi t t ers, an d s a m p le ra te con v er t e rs. th e ad19 40/ad1941 ca n be co nf igur e d in i 2 s, lef t - j ust i f i e d , r i g h t- j u st if ie d , o r td m s e r i a l p o r t -co m p a tib l e m o des. i t can s u p p o r t 16, 20, a nd 24 b i ts in al l m o des. th e ad1940/ad1941 accep t s s e r i al a u dio da t a in m s b f i rst a nd t w o s co m p le m e n t fo r m a t . a mast er c l o c k p h as e-lo ck e d lo o p (p ll) al lo ws th e ad1940/ ad1941 t o be c l o c k e d f r o m a var i ety o f dif f er en t c l o c k s p eeds. the p ll can ac cep t in p u ts o f 6 4 f s , 256 f s , 3 84 f s , o r 512 f s t o g e n e r a te the co r e s in t e r n al mas t er c l o c k. the ad1940/ad1941 o p era t e f r o m a sin g le 2.5 v p o w e r s u p p l y . an o n - b o a r d v o l t a g e r e gu l a t o r c a n b e us e d t o o p era t e t h e chi p wi t h 3.3 v o r 5 v s u p p lies. the y a r e fa b r ica t ed o n a sin g le m o n o li t h ic in t e g r a t e d c i r c ui t and a r e h o us e d i n 48-le ad l q fp p a c k a g es f o r o p era t io n o v er th e C40c t o +105c t e m p era t ur e ra ng e . 04607-0-003 28 28 dsp core data format: 5.23 (single precision) 10.46 (double precision) voltage regulator memory controllers control regisiter trap reg. safeload register serial control port mclk pll data memory 6k 28 target/slew ram 64 28 serial data/tdm input group pll mode select master clock input control port i/o group resetb program ram 1536 40 boot rom boot rom parameter ram 1024 28 coefficient rom 512 28 2 2 4 4 2 2 serial data/ tdm output group regulator group a ddress select f i gur e 9 . bl oc k diagr a m
ad1940/ad1941 rev. a | page 12 of 36 pin functions table 10 shows the ad1940/ad1941s pin numbers, names, and functions. input pins have a logic threshold compatible with ttl input levels and may be used in systems with 3.3 v or 5 v logic. sdata_in0 sdata_in1 sdata_in2/tdm_in1 sdata_in3/tdm_in0 serial data/tdm inputs. the serial format is selected by writing to bits 2:0 of the serial input port control register. sdata_in2 and sdata_in3 are dual-function pins that can be set to a variety of standard 2-channel formats or to tdm mode. two of these four pins (sdata_in2 and sdata_in3) can be used as tdm inputs in either dual-wire 8-channel mode or single-wire 16-channel mode (tdm_o0 only). in dual-wire 8-channel mode, channels 0 to 7 are input on sdata_in3 and channels 8 to 15 on sdata_in2. in single-wire 16-channel mode, channels 0 to 15 are input on sdata_in2. see the serial data input/output ports section for further explanation. lrclk_in bclk_in left/right and bit clocks for timing the input data. these input clocks are associated with the sdata_in0 through sdata_in3 signals. the input port is always in a slave configuration. these pins also function as frame sync and bit clock for the input tdm stream. sdata_out0/tdm_o0 sdata_out1 sdata_out2 sdata_out3 sdata_out4/tdm_o1 sdata_out5 sdata_out6 sdata_out7/dcsout serial data/tdm/data capture outputs. these pins are used for serial digital outputs. for non-tdm systems, these eight pins can output 16 channels of digital audio, using a variety of standard 2-channel formats. they are grouped into two groups of four pins (pins 0 to 3 and pins 4 to 7); each group can be independently set to any of the available serial modes, allowing the ad1940/ad1941 to simultaneously communicate with two external devices with different serial formats. two of these eight pins (sdata_out0 and sdata_out4) can be used as tdm outputs in either dual-wire 8-channel mode or single-wire 16- channel mode (tdm_out0 only). in dual-wire 8-channel mode, channels 0 to 7 are output on sdata_out0 and channels 8 to 15 on sdata_out4. see the serial data input/output ports section for further explanation. sdata_out7 can also be used as a data capture output, as described in the data capture registers section. lrclk_out0 bclk_out0 output clocks. this clock pair is used for outputs sdata_out0 through sdata_out3. in slave mode, these clocks are inputs to the ad1940/ad1941. on power-up, these pins are set to slave mode to avoid conflicts with external master mode devices. lrclk_out1 bclk_out1 output clocks. this clock pair is used for outputs sdata_out4 through sdata_out7. in slave mode, these clocks are inputs to the ad1940/ad1941. on power-up, these pins are set to slave mode to avoid conflicts with external master mode devices. mclk master clock input. the ad1940/ad1941 uses a pll to generate the appropriate internal clock for the dsp core. an in-depth description of using the pll is found in the setting master clock/pll mode section. pll_ctrl0 pll_ctrl1 pll_ctrl2 pll mode control pins. the functionality of these pins is described in the setting master clock/pll mode section. cdata (ad1940) serial data input for the spi control port. cout (ad1940) serial data output for the spi port. this is used for reading back registers and memory locations. it is three-stated when an spi read is not active. cclk (ad1940) spi bit clock. this clock may either run continuously or be gated off between spi transactions. clatch (ad1940) spi latch signal. this must go low at the beginning of an spi transaction and high at the end of a transaction. each spi transaction may take a different number of cclks to complete, depending on the address and read/write bit that are sent at the beginning of the spi transaction. scl (ad1941) i 2 c clock. this pin is always an input because the ad1941 cannot act as a master on the i 2 c bus. the line connected to this pin should have a 2 k? pull-up resistor on it. sda (ad1941) i 2 c serial data. the data line is bidirectional. the line connected to this pin should have a 2 k? pull-up resistor on it.
ad1940/ad1941 rev. a | page 13 of 36 i 2 c_filt_enb (ad1941) i 2 c spike filter enable/disable. this enables (active low) the i 2 c spike filter, which is used to prevent noise or glitches on the i 2 c bus from improperly affecting the ad1941. adr_sel address select. this pin selects the address for the ad1940/ ad1941s communication with the control port. this allows two ad1940s to be used with a single clatch signal or two ad1941s to be used on the same i 2 c bus. resetb active-low reset signal. after resetb goes high, the ad1940/ad1941 goes through an initialization sequence where the program and parameter rams are initialized with the contents of the on-board boot roms. all registers are set to 0, and the data rams are also set to 0. the initialization is com- plete after 8,192 internal mclk cycles (referenced to the rising edge of resetb), which corresponds to 1,366 external mclk cycles if the part is in 256 f s mode. new values should not be written to the control port until the initialization is complete. vref voltage reference for regulator. this pin is driven by an internal 1.15 v reference voltage. vdrive drive for external transistor. the base of the voltage regulators external pnp transistor is driven from this pin. vsense digital power level. the voltage level on the vdd pins is sensed on vsense. vsense should be tied to vdd. vsupply main supply voltage level. this pin is tied to the boards main voltage supply. this is usually 3.3 v or 5 v. vdd (4) digital vdd for core. 2.5 v nominal. gnd (4) digital ground. pll_vdd supply for ad1940/ad1941 pll. 2.5 v nominal. pll_gnd pll ground. odvdd (3) vdd for all digital outputs. the high levels of the digital output signals are set on this pin. the voltage can range from 2.5 v to 5.0 v. invdd peak input voltage level. the highest voltage level that the input pin sees should be connected to invdd. this is to protect the chip inputs from voltage overstress. the voltage on this pin must always be at or above the level of odvdd.
ad1940/ad1941 rev. a | page 14 of 36 signal processing overview the ad1940/ad1941 a r e desig n e d t o p r o v ide al l sig n al p r o c es sin g f u n c tio n s co mm o n ly us e d in st er e o o r m u l t ic ha nne l p l a y back sys t e m s. th e sig n al p r o c es sin g f l o w is s e t b y usin g the ad i-s u p p lie d s o f t wa r e , w h ic h al lo ws g r a p hical en tr y a n d r e al - time co n t r o l o f al l sig n al p r o c essin g f u n c tion s. m a n y o f th e sig n al p r o c es sin g f u n c tio n s a r e co de d usin g f u l l , 56-b i t do ub le-pr e cisio n a r i t h m et ic. t h e i n p u t and o u tp u t w o r d len g t h s a r e 24 b i ts. f o ur ext r a he adr o o m b i ts a r e us e d i n t h e pro c e s s o r to a l l o w i n te r n a l g a i n s up to 2 4 db w i t h out cl i p pi ng . a d d i t i o n a l ga i n s ca n b e achi e v e d b y ini t ia l l y s c a l in g do w n t h e in p u t sig n al in th e sig n al f l o w . the sig n al p r o c es sin g b l o c ks can b e a r ra n g ed in a c u s t om p r o- g r a m tha t can b e lo aded t o t h e ad1940/ad19 41 s ram. the a v a i la b l e sig n al p r o c es sin g b l o c ks a r e expla i ne d in t h e fol l o w ing secti o n s . numeric formats i t is co mm o n in ds p sys t em s t o us e a s t anda r d ize d m e t h o d o f s p e c if ying n u mer i c fo r m a t s. f r ac tio n al n u m b e r sys t em s a r e s p e c if ie d b y a n a.b fo r m a t , w h er e a is t h e n u m b er o f b i ts t o t h e lef t o f t h e de ci mal p o i n t and b is t h e n u m b er o f b i ts t o t h e r i g h t of t h e d e c i m a l p o i n t . the ad1940/ad1941 us e th e s a me n u m e r i c f o r m a t f o r bo th t h e co ef f i cie n t v a l u es (s t o r e d i n t h e p a ram e t e r r a m) a nd t h e sig n al da t a val u es. th e fo r m a t i s as fol l o w s: numerical format: 5.23 r a n g e: C16.0 t o (+16.0 ? 1 ls b) ex a m p l e s : 1000 0000 0000 0000 0000 0000 0000 = C16.0 1110 0000 0000 0000 0000 0000 0000 = C4.0 1111 1000 0000 0000 0000 0000 0000 = C1.0 1111 1110 0000 0000 0000 0000 0000 = C0.25 1111 1111 1111 1111 1111 1111 1111 = (1 ls b b e lo w 0.0) 0000 0000 0000 0000 0000 0000 0000 = 0.0 0000 0010 0000 0000 0000 0000 0000 = 0.25 0000 1000 0000 0000 0000 0000 0000 = 1.0 0010 0000 0000 0000 0000 0000 0000 = 4.0 0111 1111 1111 1111 1111 1111 1111 = (16.0 C 1 ls b). the s e r i al p o r t accep t s u p t o 24 b i ts o n t h e in p u t an d is sig n - ext e n d ed t o th e f u l l 28 b i ts o f t h e co r e . this al lo ws in t e r n al g a i n s of up to 2 4 db w i t h out e n c o u n te r i ng i n te r n a l cl i ppi ng . a d i gi tal c l i p pe r ci r c ui t i s used bet w een t h e o u t p u t o f th e d s p co r e a nd t h e s e r i al o u t p u t p o r t s (s ee f i gur e 10). this c l i p s t h e top fou r b i t s of t h e s i g n a l to pro d u c e a 2 4 - b i t out p ut w i t h a ra n g e o f 1.0 (min us 1 ls b) t o C1.0. 4-bit sign extension data in serial port 1.23 5.23 signal processing (5.23 format) digital clipper 5.23 1.23 04607- 0- 005 f i gu r e 1 0 . n u m e ri c p r ec i s io n a n d cl ippi n g s t r u ctur e programm ing on p o w e r - u p , th e ad1940 /ad1941 s def a u l t p r og ra m p a s s es t h e u n p r o c es s e d in p u t sig n als to t h e o u t p u t s (f igur e 28) b u t t h e o u t p uts a r e m u te d b y def a u l t (s e e p o w e r - u p s e q u en c e s e c t ion). ther e a r e 1,536 in s t r u c t io n c y c l es p e r a u dio s a m p le , r e s u l t in g in a n in t e r n al c l o c k ra t e o f 73.728 mh z (f o r f s = 48 khz). this d s p r u n s in a s t r e am-o r i en t e d ma nner , m e a n in g al l 1,536 in s t r u c- tio n s a r e exec u t ed each s a m p le p e r i o d . th e ad1940/ad1941 ma y als o be s e t u p t o accep t dou b le- o r q u ad-sp eed in p u ts b y r e d u cin g t h e n u m b er o f in st r u c t io n s /s am ple , w h ich c a n b e s e t i n t h e c o re c o n t ro l re g i ste r . the p a r t ca n b e p r og ra mm ed e a sil y usin g g r a p hical t o ols p r o- vide d b y ana l o g d e vices. n o k n o w le dge o f wr i t in g dsp co de i s n e ed ed t o p r o g r a m t h i s pa rt . t h e u s e r s i m p l y c a n c o n n e c t g r a p hica l b l o c k s such as b i quad f i l t ers, d y na mic s p r o c ess o rs, mixers, a n d del a y s in a sig n a l f l o w s c h e m a t i c, com p i l e t h e desig n , an d lo ad t h e p r o g r a m and p a r a m e ter f i les in to t h e ad1940/ad19 41 s p r og ra m r a m thr o ug h t h e co n t r o l p o r t . sig n al p r o c es sing b l o c ks a v a i la ble in t h e p r o v ide d lib r a r ies in cl ud e ? sin g le- and do ub le-p r e cisio n b i q u ad f i lters ? m o no a n d m u lt i c h a n n el dy n a m i c s pro c e s s o r s ? mixers and splitters ? t o ne a n d noi s e ge ne r a tor s ? fi r s t - o r d e r f i lt e r s ? f i xe d an d v a r i ab le ga in ? rms lo ok-u p t a b l es ? lo u d n e s s ? de la y ? s t e r eo e n h a n c em en t (p ha t s t e r eo ? ) ? d y n a m i c ba s s boo s t ? i n ter p ol a t o r s and de ce c i ma to rs m o r e b l oc k s a r e al w a ys i n d e ve lo p m en t . a n alog de vi ces also p r o v ides p r o p r i et a r y a n d t h ir d- p a r t y a l go r i t h m s fo r a p plica t io ns s u c h a s ma tri x d e codi n g , b a s s enh a n c em en t , a n d s u rr o u n d vir t u a li zers. c o n t ac t an adi s a les r e p r es en t a t i ve fo r info r - ma t i on ab o u t li cen s in g t h es e al g o r i t h m s .
ad1940/ad1941 rev. a | page 15 of 36 control port overview the ad1940/ad1941 have many different control options that can be set through an spi or i 2 c interface. the ad1940 uses a 4-wire spi control port and the ad1941 uses a 2-wire i 2 c bus control port. most signal processing parameters are controlled by writing new values to the parameter ram using the control port. other functions, such as mute and input/output mode control, are programmed by writing to the control registers. the control port is capable of full read/write operation for all of the memories and registers. all addresses may be accessed in both a single-address mode or a burst mode. a control word consists of the chip address, the register/ram subaddress, and the data to be written. the number of bytes per word depends on the type of data that is written. the first byte of a control word (byte 0) contains the 7-bit chip address plus the r/w bit. the next two bytes (bytes 1 and 2) form the subaddress of the memory or register location within the ad1940/ad1941. this subaddress needs to be two bytes because the memories within the ad1940/ad1941 are directly addressable, and their sizes exceed the range of single-byte addressing. all subsequent bytes (bytes 3, 4, etc.) contain the data, such as control port, program, or parameter data. the exact formats for specific types of writes are shown in table 26 to table 35. the ad1940/ad1941 have several mechanisms for updating signal processing parameters in real time without causing pops or clicks. in cases where large blocks of data need to be down- loaded, the output of the dsp core can be halted (using bit 9 of the core control register), new data loaded, and then restarted. this is typically done during the booting sequence at start-up or when loading a new program into ram. in cases where only a few parameters need to be change d, they can be loaded without halting the program. to avoid unwanted side effects while loading parameters on the fly, the sigmadsp provides the safeload registers. the safeload registers can be used to buffer a full set of parameters (for example, the five coefficients of a biquad) and then transfer these parameters into the active program within one audio frame. the safeload mode uses internal logic to prevent contention between the dsp core and the control port. ad1940 spi port the spi port uses a 4-wire interface, consisting of clatch, cclk, cdata, and cout signals. the clatch signal goes low at the beginning of a transaction and high at the end of a transaction. the cclk signal latches cdata on a low-to-high transition. cout data is shifted out of the ad1940/ad1941 on the falling edge of cclk and should be clocked into the receiving device, such as a microcontroller, on cclks rising edge. the cdata signal carries the serial input data and the cout signal is the serial output data. the cout signal remains three-stated until a read operation is requested. this allows other spi-compatible peripherals to share the same readback line. all spi transactions follow the same basic format, shown in table 11. a timing diagram is shown in figure 4. all data written should be msb first. table 11. generic spi word format byte 0 byte 1 byte 2 byte 3 byte 4, etc. chip_adr [6:0], r/ w 0000, subadr [11:8] subadr [7:0] data data chip address r w the first byte of an spi transaction includes the 7-bit chip address and a r/ w bit. the chip address is set by the adr_sel pin. this allows two ad1940s to share a clatch signal, yet operate independently. when adr_sel is low, the chip address is 0000000; when it is high, the address is 0000001. the lsb of this first byte determines whether the spi transaction is a read (logic level 1) or a write (logic level 0). subaddress the 12-bit subaddress word is decoded into a location in one of the memories or registers. this subaddress is the location of the appropriate ram location or register. data bytes the number of data bytes varies according to the register or memory being accessed. in burst write mode, an initial subaddress is given followed by a continuous sequence of data for consecutive memory/register locations. the detailed data format diagram for continuous mode operation is given in the control port read/write data formats section. a sample timing diagram for a single spi write operation to the parameter ram is shown in figure 11. a sample timing diagram of a single spi read operation is shown in figure 12. the cout pin goes from three-state to driven at the beginning of byte 3. in this example, bytes 0 to 2 contain the addresses and r/w bit, and subsequent bytes carry the data. ad1941 i 2 c port the ad1941 supports a 2-wire serial (i 2 c-compatible) micro- processor bus driving multiple peripherals. two pins, serial data (sda) and serial clock (scl), carry information between the ad1941 and the system i 2 c master controller. the ad1941 is always a slave on the i 2 c bus, which means that it never initiates a data transfer. each slave device is recognized by a unique address. the ad1941 has four possible slave addresses, two for writing operations and two for reading. these are unique addresses for the device and are illustrated in table 12. the lsb
ad1940/ad1941 rev. a | page 16 of 36 of the byte sets either a read or write operation; logic level 1 corresponds to a read operation and logic level 0 corresponds to a write operation. the seventh bit of the address is set by tying the adr_sel pin of the ad1941 to logic level 0 or logic level 1. the ad1941 i 2 c port uses a spike filter that can be enabled or disabled by the i2c_filt_enb pin. enabling this filter guar- antees that all isolated spikes, both positive and negative, less than 50 ns wide are removed from the i 2 c signal. the filter is active when the i2c_filt_enb pin is low and is disabled when the pin is high. typically, the largest spike that is filtered is 67 ns wide. table 12. ad1941 i 2 c addresses adr_sel r/w slave address 0 0 0x28 0 1 0x29 1 0 0x2a 1 1 0x2b addressing initially, all devices on the i 2 c bus are in an idle state, which is where the devices monitor the sda and scl lines for a start condition and the proper address. the i 2 c master initiates a data transfer by establishing a start condition, defined by a high-to-low transition on sda while scl remains high. this indicates that an address/data st ream will follow. all devices on the bus respond to the start condition and read the next byte (7-bit address + r/w bit) msb firs t. the device that recognizes the transmitted address responds by pulling the data line low during the ninth clock pulse. this ninth bit is known as an acknowledge bit. all other devices withdraw from the bus at this point and return to the idle condition. the r/w bit determines the direction of the data. a logic 0 on the lsb of the first byte means the master writes information to the peripheral. a logic 1 on the lsb of the first byte means the master reads information from the peripheral. a data transfer takes place until a stop condition is encountered. a stop condition occurs when sda transitions from low to high while scl is held high. figure 13 shows the timing of an i 2 c write. burst mode addressing, where the subaddresses are automati- cally incremented at word boundaries, can be used for writing large amounts of data to contiguous memory locations. this increment happens automatically if a stop condition is not encountered after a single-word write. the registers and memories in the ad1941 range in width from one to five bytes, so the autoincrement feature knows the mapping between sub- addresses and the word length of the destination register (or memory location). a data transfer is always terminated by a stop condition. stop and start conditions can be detected at any stage during the data transfer. if these conditions are asserted out of sequence with normal read and write operations, these cause an immediate jump to the idle condition. during a given scl high period, the user should only issue one start condition, one stop condition, or a single stop condition followed by a single start condition. if an invalid subaddress is issued by the user, the ad1941 does not issue an acknowledge and returns to the idle condition. if the user exceeds the highest subaddress while in autoincrement mode, one of two actions are taken. in read mode, the ad1941 outputs the highest subaddress register contents until the master device issues a no-acknowledge, indicating the end of a read. a no-acknowledge condition is where the sda line is not pulled low on the ninth clock pulse on scl. if the highest subaddress location is reached while in write mode, the data for the invalid byte is not loaded into any subaddress register, a no-acknowledge is issued by the ad1941 and the part returns to the idle condition. i 2 c read and write operations table 13 shows the timing of a single-word write operation. every ninth clock, the ad1941 issues an acknowledge by pulling sda low. table 14 shows the timing of a burst mode write sequence. this figure shows an example where the target destination registers are two bytes. the ad1941 knows to increment its subaddress register every two bytes because the requested subaddress corresponds to a register or memory area with a 2-byte word length. the timing of a single word read operation is shown in table 15. note that the first r/ w bit is still a 0, indicating a write opera- tion. this is because the subaddress still needs to be written in order to set up the internal address. after the ad1941 acknow- ledges the receipt of the subaddress, the master must issue a repeated start command followed by the chip address byte with the r/ w set to 1 (read). this causes the ad1941s sda to turn around and begin driving data back to the master. the master then responds every ninth pulse with an acknowledge pulse to the ad1941. table 16 shows the timing of a burst mode read sequence. this figure shows an example where the target read registers are two bytes. the ad1941 knows to increment its subaddress register every two bytes because the requested subaddress corresponds to a register or memory area with word lengths of two bytes. other address ranges may have a variety of word lengths ranging from one to five bytes; the ad1941 always decodes the subaddress and sets the autoincrement circuit so that the address increments after the appropriate number of bytes.
ad1940/ad1941 rev. a | page 17 of 36 clatch cclk cdata byte 0 msb lsb byte 1 byte 2 byte 3 04607-0-006 f i g u re 11. spi w r it e f o r m at ( s ing l e w r i t e m o d e ) 04607-0-007 clatch cclk cdata cout byte 0 byte 1 hi-z data data byte 2 data hi-z f i g u re 12. spi r e ad f o r m at (s ing l e r e a d m o de) r/w 00 0 0 adr sel 00 04607-027 ack. by ad1941 sck sda sck (continued) sda (continued) frame 2 subaddress byte 1 ack. by ad1941 frame 1 chip address byte 1 start by master ack. by ad1941 ack. by ad1941 stop by master frame 4 data byte 1 frame 3 subaddress byte 2 f i gur e 1 3 . ad19 41 i 2 c w r it e f o rmat
ad1940/ad1941 rev. a | page 18 of 36 r/w sck ad r se l r/w ad r se l 04607-028 sda start by master ack. by ad1941 ack. by ad1941 stop by master ack. by master frame 2 subaddress byte 1 frame 1 chip address byte 1 frame 3 subaddress byte 2 frame 4 chip address byte ack. by ad1941 repeated start by master frame 6 read data byte 2 ack. by master sck (continued) sda (continued) sck ( continued) sda ( continued) ack. by ad1941 frame 5 read data byte 1 f i gur e 1 4 . ad19 41 i 2 c r e ad f o r m at table 13. si ngle word i 2 c wr ite s chip addres s , r/ w = 0 a s s u b a d d r e s s h i g h a s s u b a d d r e s s l o w a s d a t a byte 1 as data byte 2 as data byte n p table 14. burst mo de i 2 c writ e s c h i p address, r/ w = 0 a s s u b a d d r e s s hig h a s s u b a d d r e s s low a s d a t a word 1, byte 1 a s d a t a word 1, byte 2 a s d a t a word 2, byte 1 a s d a t a word 2, byte 2 a s p table 15. si ngle word i 2 c rea d s chip addres s , r/ w = 0 as subaddres s high as subaddres s low a s s chip addres s , r/ w = 1 as data byte 1 am data byte 2 a m data byte n p table 16. burst mo de i 2 c rea d s chip addres s , r/ w = 0 as subaddres s high as subaddres s low a s s chip addres s , r/ w = 1 as data word 1, byte 1 am data word 1, byte 2 a m p s - s t art bit p - st op bit am - ac kn owle dge by ma st er as - ackn ow le dge by sla v e
ad1940/ad1941 rev. a | page 19 of 36 rams and registers table 17. control port addresses spi/ i 2 c subaddress register name read/write word length 0C1023 (0x0000C0x03ff) parameter ram write: 4 bytes, read: 4 bytes 1024C2559 (0x0400C0x09ff) program ram write: 5 bytes, read: 5 bytes 2560C2623 (0x0a00C0x0a3f) target/slew ram write: 5 bytes, read: n/a 2624C2628 (0x0a40C0x0a44) parameter ram data safeload registers 0C4 write: 5 bytes, read: n/a 2629C2633 (0x0a45C0x0a49) parameter ram indirect address sa feload registers 0C4 write: 2 bytes, read: n/a 2634C2639 (0x0a4aC0x0a4f) data capture registers 0C5 (control port readback) write: 2 bytes, read: 3 bytes 2640C2641 (0x0a50C0x0a51) data capture registers (digital output) write: 2 bytes, read: n/a 2642 (0x0a52) dsp core control register write: 2 bytes, read: 2 bytes 2643 (0x0a53) ram configuration register write: 1 byte, read: 1 byte 2644 (0x0a54) serial output control register 1 (c hannels 0C7) write: 2 bytes, read: 2 bytes 2645 (0x0a55) serial output control register 2 (c hannels 8C15) write: 2 bytes, read: 2 bytes 2646 (0x0a56) serial input control register write: 1 byte, read: 1 byte table 18. ram read/write modes memory size subaddress range read write burst mode available write modes parameter ram 1024 28 0C1023 (0x0000C0x03ff) yes yes yes direct write 1 or safeload write program ram 1536 40 1024C2559 (0x0400C0x09ff) yes yes yes direct write 1 target/slew ram 64 34 2560C2623 (0x0a00C0x0a3f) no yes (via safeload) yes 2 safeload write 1 dsp core should be shut down first to avoid clicks/pops. 2 the target/slew rams need to be written through the safeload registers. safeload writes may be done in either single write mod e or burst mode. control port addressing table 17 shows the addressing of the ad1940/ad1941s ram and register spaces. the address space encompasses a set of registers and three rams: one each for holding signal processing parameters, holding the program instructions, and ramping parameter values. the program and parameter rams are initialized on power-up from on-board boot roms. table 18 shows the sizes and available writing modes of the parameter, program, and target/slew rams. parameter ram contents the parameter ram is 28 bits wide and occupies addresses 0 to 1023. the parameter ram is initialized to all 0s on power-up. the data format of the parameter ram is twos complement 5.23. this means that the coefficients may range from +16.0 (minus 1 lsb) to C16.0, with 1.0 represented by the binary word 0000 1000 0000 0000 0000 0000 0000. options for parameter updates the parameter ram can be written and read using one of the two following methods. 1. direct read/write . this method allows direct access to the program and parameter rams. this mode of operation is normally used during a complete new load of the rams, using burst mode addressing. the clear register bit in the core control register should be set to 0 using this mode to avoid any clicks or pops in the outputs. note that it is also possible to use this mode during live program execution, but since there is no handshaking between the core and the control port, the parameter ram is unavailable to the dsp core during control writes, resulting in clicks and pops in the audio stream. 2. safeload write. up to five safeload registers can be loaded with parameter ram address/data. the data is then transferred to the requested address when the ram is not busy. this method can be used for dynamic updates while live program material is playing through the ad1940/ ad1941. for example, a complete update of one biquad section can occur in one audio frame, while the ram is not busy. this method is not available for writing to the program ram or control registers. the following sections discuss these two options in more detail.
ad1940/ad1941 rev. a | page 20 of 36 recommended program/parameter loading procedures when writing large amounts of data to the program or para- meter ram in direct write mode, the processor core should be disabled to prevent unpleasant noises from appearing at the audio output. the ad1940/ad1941 contain several mechanisms for disabling the core. if the loaded program does not use the target/slew ram as the main system volume control (for example, the default power-up program), 1. assert bit 9 (low to assertdefault setting) and bit 6 (high to assert) of the core control register. this zeroes the accumulators, the serial output registers, and the serial input registers. 2. fill the program ram using burst mode writes. 3. fill the parameter ram using burst mode writes. 4. assert bit 7 of the core control register to initiate a data- memory clear sequence. wait at least 100 s for this sequence to complete. this bit is automatically cleared after the operation is complete. 5. deassert bit 9 and bit 6 of the core control register to allow the core to begin normal operation if the loaded program does use the target/slew ram as the main system volume control, 1. assert bit 12 of the core control register. this begins a volume ramp down, with a time constant determined by the upper bits of the target ram. wait for this ramp down to complete (the user may poll bit 13 of the core control register, or simply wait for a given amount of time). 2. assert bit 9 (low to assert) and bit 6 (high to assert) of the core control register. this zeroes the accumulators, the serial output registers, and the serial input registers. 3. fill the program ram using burst mode writes. 4. fill the parameter ram using burst mode writes. 5. assert bit 7 of the core control register to initiate a data- memory clear sequence. wait at least 100 s for this sequence to complete. this bit is automatically cleared after the operation is complete. 6. deassert bit 9 and bit 6 of the core control register. 7. if the newly loaded program also uses the target/slew ram, deassert bit 12 of the core control register to begin a volume ramp up procedure. target/slew ram the target/slew ram is a bank of 64 ram locations, each of which can be set to autoramp from one value to a desired final value in one of four modes. summary the target/slew ram is used by the dsp when a program is loaded into the program ram that uses one or more locations in the slew ram to access internal coefficient data. typically, these coefficients are used for volume controls or smooth cross- fading effects, but may be used to update any value in the para- meter ram. each of the 64 locations in the slew ram are linked to corresponding locations in the target ram. when a new value is written to the target ram using the control port, the corresponding slew ram location begins to ramp toward the target. the value is updated once per audio frame (lrclk period). the target ram is 34 bits wide. the lower 28 bits contain the target data in 5.23 format for the linear and exponential (constant db and rc type) ramp types. for constant time ramping, the lower 28 bits contain 16 bits in 2.14 format and 12 bits to set the current step. the upper six bits are used to determine the type and speed of the ramp envelope in all modes. the format of the data write for linear and exponential formats is shown in table 19. table 20 shows the data write format for the constant time ramping. data can only be written to the target/slew ram using the safeload registers as described in the safeload registers section. a mute slew ram bit is included in the core control register to simultaneously set all the slew ram target values to 0. this is useful for implementing a global multichannel mute. when this bit is deasserted, all slew ram values return to their original premuted states. tale 19. linear, constant db, and rc type ramp data write byte 0 byte 1 bytes 2C4 000000, curve_type [1:0] time_const [3:0], data [27:24] data [23:0] tale 20. constant time ramp data write byte 0 byte 1 bytes 2C4 000000, curve_type [1:0] update_step [0], #_of_steps [2:0], data [15:12] data [11:0], reserved [11:0]
ad1940/ad1941 rev. a | page 21 of 36 the fo ur ra m p i n g c u r v e typ e s ar e ? l i n e a r v al ue sle w s t o ta rg et usin g a f i xe d s t ep size . ? c o n s t a n t db v al ue s l e w s t o t a rg et usin g t h e c u r r en t val u e t o calc u l a t e t h e s t ep si ze . th e r e s u l t in g c u r v e has a co n s t a n t r i s e a nd de c a y w h en m e asur e d in d b . ? r c typ e v al ue s l e w s t o t a rg et usin g t h e dif f er en c e b e tw e e n t a rg et a nd c u r r en t val u es t o calc u l a t e t h e st ep si ze , p r o d ucin g a sim p le r c typ e c u r v e fo r r i sin g a nd fal l ing. ? c o n s ta n t t i m e v al ue s l e w s t o th e ta r g e t in a f i x e d n u m b er o f s t eps in a li n e a r fas h i o n. th e con t r o l p o r t m u t e has n o a f f e c t on this typ e . table 21. target/slew ram r a mp ty pe s e ttings s e t t i n g r a m p t y p e 0 0 l i n e a r 0 1 c o nstan t d b 1 0 r c t y p e 1 1 c o nstan t t i m e the fol l o w in g s e c t io n s det a i l ho w t h e con t r o l p o r t wr i t es t o th e t a r g e t / s lew ra m t o co n t r o l th e tim e co n s ta n t a n d ra m p t y pe pa r a m e t e r s . ramp types 1 to 3: linear, c o nstant db, rc type (34-bit write) t h e ta r g e t w o r d f o r th e f i r s t th r e e ra m p t y pe s i s b r o k en u p in t o thr e e p a r t s. th e 34-b i t co mmand is wr i t ten wi th six leading 0s to e x te nd t h e da t a w r i t e to f i ve by te s . th e p a r t s of t h e t a rge t r a m wr i t e a r e t h e fol l o w in g: ? r a m p t y p e (2 b i ts) ? t i m e c o n s ta n t (4 b i ts) 0000 = f a s t es t 1111 = s l o w es t ? da t a (28 b i ts): 5 . 23 f o r m a t ramp type 4 constant ti me (34-bit w r ite) t h e ta r g e t w o r d f o r th e co n s t a n t tim e ra m p t y p e i s w r i t t e n in f i ve p a r t s, wi t h t h e 34- b i t co m m a nd a g ain wr i t te n w i t h s i x le adin g zer o s t o ext e nd t h e da t a wr i t e t o f i v e b y tes. th e p a r t s o f th e co n s ta n t tim e t a r g e t ra m w r i t e a r e th e f o llo w i n g: ? r a m p t y p e (2 b i ts). ? u p da te ste p ( 1 b i t ) . s e t to 1 w h e n ne w t a rge t i s l o a d e d to t r i g ge r ste p v a lu e up da te. v a lu e i s a u tom a t i c a l l y re s e t af te r t h e st ep val u e is u p da te d . ? n u m b er o f s t ep s (3 b i ts). the n u m b er o f s t eps t h a t i t t a k e s t o s l e w t o t h e t a rg et val u e is s e t b y t h es e t h r e e b i ts, w i t h t h e n u m b er o f s t eps e q ual t o 2 3-b i t s e t t i n g + 6 . 000 = 64 001 = 128 010 = 256 011 = 512 100 = 1024 101 = 2048 110 = 4096 111 = 8196 ? da t a (16 b i ts). 2.14 f o r m a t . ? r e se r v ed (12 b i t s ). w h en w r i t in g t o th e ra m, th e s e b i t s s h o u ld al l be s e t t o 0. targ et and sl ew ram initialization on r e s e t, t h e t a rg et/s l e w r a m i n i t iali zes t o p r e s et val u es. th e t a rget r a m in i t ia li zes t o a li n e ar ra m p ty p e w i t h a t i me co n s tan t o f 5 and the da t a s e t t o 1.0. th e s l e w r a m ini t ial i zes to a val u e o f 1.0. th es e defa u l ts g i v e a f u l l -s c a le (1.0 t o 0.0) ra m p time o f 21.3 m s . linear u p dat e math l i ne ar m a t h i s t h e a d d i t i on or s u bt r a c t i o n of a c o nst a n t v a lu e ( s te p ) . th e e q u a t i on to de s c r i b e t h i s ste p s i z e i s () 20 10 13 5 2 2 ? = tconst step t h e r e s u l t o f th e eq ua ti o n i s n o rm ali z e d t o a 5.23 d a ta f o rm a t . this g i v e s a time co n s tan t ran g e f r o m 6.75 m s to 213.4 m s (C60 db r e l a t i ve to 0 db f u l l s c a l e). an ex a m ple o f t h is k i nd o f u p da te is sh o w n in f i gur e 15 and f i gur e 16. al l s l ew r a m f i gur e exa m ples, excep t t h e half- s cale co ns t a n t t i m e ram p plo t , sh o w an i n cr e a s i n g o r de cr e a sing r a m p b e twe e n C80 db and 0 db (f u l l s c ale). a l l f i gur e s exce p t t h e co n s t a n t t i me plo t s (f igur e 19 a nd f i gur e 21) us e a time co n s ta n t of 0x7 (0x0 bein g t h e fas t est an d 0 x f b e in g t h e s l ow es t). time (ms) ou tpu t level ( v ) 1 0.4 0.6 0.8 0.2 0 ?0.4 ?0.2 ?1 ?0.8 ?0.6 01 0 2 0 3 0 04607-0-017 f i gure 15. sl ew r a m?line ar update increasi ng r a mp
ad1940/ad1941 rev. a | page 22 of 36 ? 1.0 ? 0.8 ? 0.6 ? 0.4 ? 0.2 0 0.2 0.4 0.6 0.8 1.0 35 25 15 5 time (ms) ou tpu t level ( v ) 04607-029 20 10 03 0 f i gure 16. sl ew r a mline ar update d e creasi ng ra mp c o ns tant db a n d r c t y pe ( e xponenti al) u p d a te mat h e x p o n e n t ia l ma t h is accom p lishe d b y shif t s an d adds wi t h a ra n g e f r o m 6.1 m s t o 1.27 s (C6 0 db r e l a ti v e t o 0 db f u l l s c ale). w h en t h e ram p typ e is s e t t o 01 (co n s t an t db), eac h s t ep size is s e t t o t h e c u r r en t val u e in t h e sle w da t a . w h e n t h e ram p typ e b i ts a r e s e t t o 10 (r c typ e ), t h e st ep sizes a r e e q u a l t o t h e dif f er en ce b e twe e n t h e val u es i n t h e t a rg et r a m a nd s l e w r a m. f i g u re 1 7 an d fi g u re 1 8 show e x am pl e s of t h i s t y p e of ta r g et/s lew ram ra m p in g. a decr easin g ra m p o f bo th t h e co n s t a n t db and rc ty p e r a m p s is a mir r o r ima g e o f t h e co n s t a n t db i n c r e a sin g r a m p , and is sh o w in f i gur e 19. 04607-0-018 time (ms) ou tpu t level ( v ) 1 0.8 0.6 0.4 0.2 0 ? 0.6 ? 0.4 ? 0.2 ? 0.8 ?1 01 0 52 0 15 30 25 35 f i gure 17. slew r a m c o nstant db u p date inc r e a sing ramp 04607-0-019 time (ms) ou tpu t level ( v ) 1 0.8 0.6 0.4 0.2 0 ? 0.6 ? 0.4 ? 0.2 ? 0.8 ?1 35 25 15 5 20 10 03 0 f i gure 18. sl ew r a mr c t y pe update inc r e a sing ra mp ?1.0 ?0.8 ?0.6 ?0.4 ?0.2 0 0.2 0.4 0.6 0.8 1.0 time (ms) ou tpu t level ( v ) 04607-030 35 25 15 5 20 10 03 0 f i gure 19. slew r a m c o nstant db and r c t y p e update d e creas i ng ra mp , f u ll s c a l e 04607-0-020 time (ms) ou tpu t level ( v ) 1 0.8 0.6 0.4 0.2 0 ? 0.6 ? 0.4 ? 0.2 ? 0.8 ?1 35 25 15 5 20 10 03 0 f i gure 20. slew r a m c o nstant time up da t e i n cr ea si n g r a m p , f u l l sc a l e
ad1940/ad1941 rev. a | page 23 of 36 04607-0-021 time (ms) ou tpu t level ( v ) 1 0.8 0.6 0.4 0.2 0 ? 0.6 ? 0.4 ? 0.2 ? 0.8 ?1 35 25 15 5 20 10 0 3 0 f i gure 21. slew r a m c o nstant time up da t e i n cr ea si n g r a m p , ha l f sc a l e ? 1.0 ? 0.8 ? 0.6 ? 0.4 ? 0.2 0 0.2 0.4 0.6 0.8 1.0 time (ms) ou tpu t level ( v ) 04607-031 35 25 15 5 20 10 03 0 f i gure 22. sl ew r a m constant ti me update d e c r e a sin g ra mp , f u ll s c al e constant time updat e m a t h c o n s ta n t tim e m a th i s acco m p li s h e d b y a d di n g a s t e p v a l u e tha t i s cal c ul a t ed a f t e r ea c h n e w ta rg e t i s l o a d ed . th e e q ua ti o n f o r t h is st ep si ze is ste p = ( ta r g e t d a t a ? sl ew d a ta )/( n u m b er o f s t eps ) f i g u re 2 0 show s a pl ot of t h e t a r g e t / s l e w r a m op e r a t i n g i n co n s tan t time m o de . f o r this exa m p l e , 128 s t eps a r e us ed t o r e a c h th e ta r g e t v a l u e . t h i s t y pe o f ra m p i n g ta k e s a f i x e d amou n t of t i me f o r a g i ve n n u mb e r of ste p s , re g a rd l e ss of t h e dif f er en ce i n t h e ini t ial s t a t e and t h e t a rg et val u e . f i gur e 21 show s a pl ot of a c o nst a n t t i me r a m p f r om C 8 0 d b to C 6 d b (half s c ale) usin g 128 s t eps. y o u ca n s e e tha t t h e ra m p ta k e s t h e s a me am o u n t o f time as t h e p r e v io us ra m p f r o m C80 db t o 0 db . a co n s t a n t tim e decr easin g ram p p l o t is s h o w n in f i gur e 21. safeload registers m a n y a p p l i c a t i o ns re qu i r e re a l t i m e c o n t ro l of s i g n a l pro c e s s i ng p a ra m e ters, s u ch as f i l t er co ef f i cien ts, mixer ga in s, m u l t ichann el v i r t u a l i z i ng p a r a me te r s , or dy n a m i c s pro c e s s i n g c u r v e s . t o pre v e n t i n st a b i l it y f r om o c c u r r i ng , a l l of t h e p a r a me t e r s of a b i q u ad f i l t er m u s t b e u p da t e d a t th e s a me tim e . o t h e r w is e , th e f i l t er co u l d exe c u t e fo r o n e o r t w o a u dio f r a m e s w i t h a mix o f old a nd n e w co ef f i cien ts. this mix co u l d c a us e tem p o r a r y in st ab i l i t y , le adi n g t o t r a n sien ts t h a t co u l d t a k e a lo n g t i m e t o dec a y . t o e l imina t e this p r ob lem, th e ad1940/ad1941 lo ad a set o f 10 r e gis t er s in the co n t r o l p o r t (f i v e f o r 2 8 -b i t p a ram e t e rs, a nd an o t h e r f i ve fo r in dir e c t ly addr essin g t h e t a rget/sle w r a ms) w i t h t h e desir e d p a r a m e ter o r t a rget/sle w r a m ad dr ess a nd da t a . f i v e reg i s t ers a r e us e d b e c a us e a b i quad f i l t er us es f i v e co ef f i cien ts and i t is desira b l e to be a b le t o do a co m p lete b i quad up da te i n on e t r a n s a c t ion. t h e s a felo ad r e g i sters can b e us e d t o u p da t e ei t h er t h e p a ram e t e r r a m o r t a rg et/s le w r a m val u es. on ce t h es e r e g i s t ers a r e lo ade d , t h e a p p r o p r i a t e ini t i a te sa f e tra n sf er b i t (th e r e a r e sep a r a t e b i ts f o r p a ra m e t e r an d t a r g e t / s l e w l o a d s ) i n t h e c o re c o n t ro l re g i ste r s h ou l d b e s e t to ini t ia t e t h e lo adin g in t o r a m. p r og ra m len g th s s h o u ld b e limi ted t o 1,531 c y c l es (1,536 ? 5) t o en s u r e tha t th e sig m ads p is a b le t o p e r f o r m the s a f e lo ads. i t ca n be g u a r an t e e d tha t t h e s a f e lo ad wil l ha v e o c c u r r ed wi t h in on e l r cl k p e r i o d (21 s a t f s = 48 kh z) o f th e ini t ia t e s a f e tra n sf er b i t being s e t. t h e sa f e l o a d l o gi c a u t o ma tic a ll y se n d s o n l y t h ose sa f e l o a d r e gi s - t e rs t h a t ha v e b e en wr i t t e n t o si n c e t h e last s a fe l o ad o p era t ion. f o r e x am pl e, i f on ly t w o p a r a m e te r s are to b e s e n t , on ly t w o of t h e f i v e s a fe lo ad r e g i s t ers m u s t b e wr i t t e n t o . w h e n t h e ini t ial s a f e t r ans f e r bit ( i n t h e c o re c o n t ro l re g i ste r ) i s a s s e r t e d , on ly t h os e t w o r e g i s t ers a r e s e n t ; t h e o t h e r t h r e e r e g i s t ers a r e n o t s e n t t o th e r a m an d ca n stil l h o ld old o r in valid da t a . table 22. data capture contr o l registers (2634C2641) register bits function 12:2 11-bit program counter address 1:0 register select 00 = mult_x_in p ut 01 = mult_y_input 10 = mac_outp ut 11 = accum_fback data capture registers the ad1940/ad1941 s da ta ca p t ur e f e a t ur e al lo ws th e da ta a t a n y n o de in t h e sig n al p r o c es sing f l o w t o be s e n t t o o n e o f six co n t r o l p o r t -r e a da b l e reg i sters or to a s e r i a l o u tp u t p i n. this can b e us e d to m o n i to r a nd displ a y info r m a t io n ab ou t in ter n a l sig n al le v e l s o r co m p r e s s o r /limi t er ac tivi ty . the ad1940/ad1941 co n t ain six in dep e n d en t co n t r o l p o r t - r e ada b le d a t a c a p t ur e r e g i sters, a nd t w o dig i t a l o u t p ut ca pt ur e r e g i s t ers. th e dig i t a l o u t p u t r e g i s t ers a r e o u t p ut o n s d a t a_ o u t7 w h en t h e da t a c a pt ur e s e r i al o u t ena b le b i t (b i t 14) is s e t in s e r i al o u t p u t c o n t r o l reg i s t er 2. th es e r e g- is t e rs a r e us ef u l w h en de b u g g i ng t h e sig n al p r o c es sin g f l o w . f o r e a ch o f t h e da t a ca p t ur e r e g i s t ers, a c a pt ur e co un t and a r e g i s t er s e le c t m u s t b e s e t. th e c a pt ur e co un t is a n u m b er betw een 0 an d 1,535 tha t co r r es p o n d s t o t h e p r og ra m s t ep n u m b er w h er e t h e ca pt ur e o c c u rs. th e r e g i st er s e le c t f i e l d p r og ra m s o n e of fo ur r e g i s t ers in t h e ds p co r e t h a t is t r a n sfer r e d t o t h e da t a ca p t ur e r e g i s t er w h e n t h e p r og ra m
ad1940/ad1941 rev. a | page 24 of 36 counter equals the capture count. the register select field selections are shown in table 23. table 23. data capture output register select setting register 00 multiplier x input (mult_x_input) 01 multiplier y input (mult_y_input) 10 multiplier-accumulator output (mac_out) 11 accumulator feedback (accum_fback) the capture count and register select bits are set by writing to one of the eight data capture registers at the following register addresses: 2634: control port data capture setup register 0 2635: control port data capture setup register 1 2636: control port data capture setup register 2 2637: control port data capture setup register 3 2638: control port data capture setup register 4 2639: control port data capture setup register 5 2640: digital out data capture setup register 0 2641: digital out data capture setup register 1 the captured data is in 5.19 tw os complement data format for all eight register select fields. the four lsbs are truncated from the internal 5.23 data-word. the data that must be written to set up the data capture is a concatenation of the 11-bit program count index with the 2-bit register select field. the capture count and register select values that correspond to the desired point to be monitored in the signal processing flow can be found in a file output from the program compiler. the capture registers can be accessed by reading from locations 2634 to 2639 (for control port capture registers). the format for reading and writing to the data capture registers can be seen in table 32 and table 33. dsp core control register the controls in this register set the operation of the ad1940/ ad1941s dsp core. bits 6 to 9 can be set to initiate a shutdown of the core. the output is muted when this is performed, so it is best to first assert the mute slew ram bit (if slew ram loca- tions are used as volume controls in the program) to avoid a click or pop when shutdown is asserted. slew ram muted (bit 13) this bit is set to 1 when the slew ram mute operation has been completed. this bit is read-only and is automatically cleared by reading. mute slew ram, all locations (bit 12) setting this bit to 1 initiates a mute of all 64 slew ram locations. when reset to 0, all ram locations return to their previous state. this bit is only functional if slew ram locations are used in the custom program design. keep in mind that the ad1940/ad1941s default program does not use any slew ram volume controls, so this bit has no effect in that case. the mute operation is identical to writing all 0s to the data portion of the target ram, and therefore the time constant and linear/ exponential curve selection is determined by the bits that have been previously written to the high bits of the target ram. table 24. dsp core control register (2642) register bits function 15:14 reserved 13 slew ram muted (read-only) 12 mute slew ram, all locations 11 reserved, set to 0 10 use serial out lrclk for output latch 9 clear internal registers to all 0s, active low 8 force multiplier to 0 7 inititalize data memory with 0s 6 mute serial input port 5 initiate safe transfer to target ram 4 initiate safe transfer to parameter ram 3:2 input serial port to sequencer sync 00 = lrclk 01 = lrclk/2 10 = lrclk/4 11 = lrclk/8 1:0 program length 00 = 1536 01 = 768 10 = 384 11 = 192 use serial out lrclk for output latch (bit 10) normally, data is transferred from the dsp core to the serial output registers at the end of each program cycle. in some cases (for example, when the output sample rate is set to some multiple of the input sampling rate), it is desirable to transfer the internal core data multiple times during a single input audio sample period. setting this bit to 1 allows the output lrclk signal to control this data transfer rather than the internal end- of-sequence signal. operation in this mode may require custom assembly language coding in the adi graphical tools. clear registers to all zeros (bit 9) setting this bit to 0 sets the contents of the accumulators and serial output registers to 0. like the other register bits, this one powers up to 0. this means the ad1940/ad1941 power up in clear mode and do not pass a signal until a 1 is written to this bit. this is intended to prevent noise from inadvertently occurring during the power-up sequence. force multiplier to zero (bit 8) when this bit is set to 1, the input to the dsp multiplier is set to 0, which results in the multiplier output being 0. this control bit is included for maximum flexibility and is normally not used.
ad1940/ad1941 rev. a | page 25 of 36 initialize data memory with zeros (bit 7) setting this bit to 1 initializes all data memory locations to 0. this bit is cleared to 0 after the operation is complete. this bit should be asserted after a complete program/parameter download has occurred to ensure click-free operation. zero serial input port (bit 6) when this bit is set to 1, the 16 serial input channels are forced to all 0s. initiate safe transfer to target ram (bit 5) setting this bit to 1 initiates a safeload transfer to the target/slew ram. this bit clears when the operation is completed. of five safeload register pairs (address/data), only those registers that have been written since the last safeload event are transferred. address 0 corresponds to the first target ram location. initiate safe transfer to parameter ram (bit 4) setting this bit to 1 initiates a safeload transfer to the parameter ram. this bit clears when the operation is completed. of five safeload registers pairs (address/data), only those registers that have been written since the last safeload event are transferred. address 0 corresponds to the first parameter ram location. input serial port to sequencer sync (bits 3:2) normally, the internal sequencer is synchronized to the incoming audio frame rate by comparing the internal program counter with the edge of the lrclk input signal. in some cases the ad1940/ad1941 may be used to decimate an incoming signal by some integer factor. in this case, it is desirable to synchronize the sequencer to a submultiple of the incoming lrclk rate so more than one audio input sample is available to the program during a single audio output frame. for example, if these bits are set to 01 (lrclk/2), a 96 khz input can be used with a 48 khz output, allowing two consecutive input samples to be processed during a single audio output frame. operation in this mode may require custom assembly language coding in the adi graphical tools. program length (bits 1:0) 96 khz and 192 khz modes these bits set the length of the internal program. the default program length is 1,536 instructions for f s = 48 khz, but the program length can be shortened by factors of 2 to accom- modate sample rates higher than 48 khz. for f s = 96 khz, the program length should be set to 768 (01). for f s = 192 khz, the program length should be set to 384 steps (10). a program length of 192 steps is available, but is not commonly used. low power mode this setting can also be used to reduce the power consumption of the ad1940/ad1941. if the program length is set to 768 steps and f s = 48 khz instead of 96 khz, then the power consumption of the part is cut approximately in half. correspondingly, when the program length is set to 384 steps with f s = 48 khz, the power consumption is about ? of what it is in normal operation with 1,536 program steps and f s = 48 khz. table 25. ram configuration register (2643) register bits function 7:4 reserved 3:0 ram modulo, 1 lsb corresponds to 512 locations, max = 0b1100 (6 k words) ram configuration register the ad1940/ad1941 use a modulo ram addressing scheme to allow filters and other blocks to be coded easily without requiring filter data to be explicitly moved during the filtering operation. this is accomplished by adding the contents of an address offset counter to the actual base address supplied in the ad1940/ad1941s cores. this address offset counter is incre- mented automatically at the audio frame rate. this method works well for most audio applications that involve filtering. in some cases, however, it is desirable to have direct access to the ram, bypassing the autoincrementing address offset counter. for this reason, the data memories in the ad1940/ad1941 can be divided into modulo and nonmodulo portions by programming the ram configuration register (table 25). the address range from 0 to 512 (ram config- uration register contents) is treated as modulo memory with autoincrementing address offset registers. the maximum setting of this register is the full size of the ram, or 6,144 (6 k words) data words. note that addresses in this range automatically wrap around the modulo boundary as set by the register. this feature is not normally used with adi supplied blocks. for normal operation, this register may be left in its default state, which sets up the entire ram to use the autoincrement feature. this feature is included for maximum programming flexibility and may be used in the case of special software development. control port read/write data formats the read/write formats of the control port are designed to be byte oriented. this allows easy programming of common microcontroller chips. in order to fit into a byte-oriented format, 0s are appended to the data fields before the msb in order to extend the data word to the next multiple of eight bits. for example, 28-bit words written to the parameter ram are appended with four leading 0s to reach 32 bits (four bytes); 40-bit words written to the program ram are not appended with any 0s because it is already a full 5 bytes. these zero extended data fields are appended to a 3-byte field consisting of a 7-bit chip address, a read/write bit, and an 11-bit ram/ register address. the control port knows how many data bytes to expect based on the address that is received in the first three bytes.
ad1940/ad1941 rev. a | page 26 of 36 the total number of bytes for a single location write command can vary from four bytes (for a control register write), to eight bytes (for a program ram write). burst mode may be used to fill contiguous register or ram locations. a burst mode write is done by writing the address and data of the first ram/register location to be written. rather than ending the control port transaction (by bringing the clatch signal high in the ad1940/ad1941, after the data word, as would be done in a single address write, the next data word can be written immediately without first writing its specific address). the ad1940/ad1941 control ports autoincrement the address of each write, even across the boundaries of the different rams and registers. table 26. parameter ram read/wri te format (single address) byte 0 byte 1 byte 2 byte 3 bytes 4C6 chip_adr [6:0], w /r 0000, param_adr [11:8] param_adr [7:0] 0000, param [27:24] param [23:0] table 27. parameter ram block read/write format (burst mode) byte 0 byte 1 byte 2 byte 3 bytes 4C6 bytes 7-10 bytes 11-14 1 chip_adr [6:0], w /r 0000, param_adr [11:8] param_adr [7:0] 0000, param [27:24] param [23:0] 0000, param [27:0] 0000, param [27:0] param_adr + 1 param_adr + 2 1 burst mode data transfers can continue beyond the three words that are illustrated here in the s ame sequential word format. th e register/ram address auto- increments until the data transfer reaches the ic's last address. table 28. program ram read/wri te format (single address) byte 0 byte 1 byte 2 bytes 3C7 chip_adr [6:0], w /r 0000, prog_adr [11:8] prog_adr [7:0] prog [39:0] table 29. program ram block read/write format (burst mode) byte 0 byte 1 byte 2 bytes 3-7 bytes 8-12 bytes 13-17 1 chip_adr [6:0], w /r 0000, prog_adr [11:8] prog_adr [7:0] pr og [39:0] prog [39:0] prog [39:0] prog_adr +1 prog_adr +2 1 burst mode data transfers can continue beyond the three words that are illustrated here in the s ame sequential word format. th e register/ram address auto- increments until the data transfer reaches the ic's last address. table 30. control register read/write form at (core, serial out 0, serial out 1) byte 0 byte1 byte 2 byte 3 byte 4 chip_adr [6:0], w /r 0000, reg_adr [11:8] reg_adr [7:0 ] data [15:8] data [7:0] table 31. control register read/write form at (ram configuration, serial input) byte 0 byte1 byte 2 byte 3 chip_adr [6:0], w /r 0000, reg_adr [11:8] reg_adr [7:0] data [7:0]
ad1940/ad1941 rev. a | page 27 of 36 table 32. data capture register write format byte 0 byte 1 byte 2 byte 3 byte 4 chip_adr [6:0], w /r 0000, data_capture_adr [11:8] data_cap ture_adr [7:0] 000, progcount [10:6] 1 progcount [5:0] 1 , regsel [1:0] 2 1 progcount [10:0] = value of program counter where trap occurs (the table of values is generated by the program compiler). 2 regsel [1:0] selects one of four registers (see data capture registers section). table 33. data capture (control port readback) register read format byte 0 byte 1 byte 2 bytes 3C5 chip_adr [6:0], w /r 0000, data_capture_adr [11:8] data_capture_adr [7:0] data [23:0] table 34. safeload register data write format byte 0 byte 1 byte 2 byte 3 bytes 4C7 chip_adr [6:0], w /r 0000, safeload_adr [11:8] safeload_adr [7 :0] 000000, data [33:32] data [31:0] table 35. safeload register address write format byte 0 byte 1 byte 2 byte 3 byte 4 chip_adr [6:0], w /r 0000, safeload_adr [11:8] safeload_adr [7:0] 000000, param_adr [9:8] param_adr [7:0]
ad1940/ad1941 rev. a | page 28 of 36 serial data input/output ports the ad1940/ad1941s flexible serial data input and output ports can be set to accept or transmit data in 2-channel formats or in an 8- or 16-channel tdm stream. data is processed in twos complement, msb first format. the left channel data field always precedes the right channel data field in the 2-channel streams. in the tdm modes, slots 0 to 3 (8-channel tdm) or slots 0 to 7 (16-channel tdm) fall in the first half of the audio frame, and slots 4 to 7 (or slots 8 to 15 in 16-channel tdm) are in the second half of the frame. the serial modes are set in the serial output and serial input control registers. the input control register allows control of clock polarity and data input modes. the valid data formats are i 2 s , left-justified, right-justified (24-, 20-, 18-, or 16-bit), 8-channel, and 16-channel tdm. in all modes except for the right-justified modes, the serial port accepts an arbitrary number of bits up to a limit of 24. extra bits do not cause an error, but they are trun- cated internally. proper operation of the right-justified modes requires that there be exactly 64 bclks per audio frame. the tdm data is input on sdata_in2 and sdata_in3 when in 2 8-channel tdm mode, and on sdata_in2 in 16-channel tdm mode. the lrclk in tdm mode can be input to the ad1940/ad1941 as either a 50/50 duty cycle clock or as a bit- wide pulse. the two clock domains on the serial output ports can generate two separate 8-channel tdm streams or one 16-channel tdm stream. when in 16-channel tdm mode, the data is clocked by lrclk_out0 and bclk_out0. the ad1940/ad1941 must be in slave mode for 16-channel tdm mode, unless the data is sampled at 48 khz; the parts cannot generate a tdm bit clock that is fast enough to support 96 khz or 192 khz. in 8-channel tdm mode, the ad1940/ad1941 can be masters for 48 khz and 96 khz data, but not for 192 khz data. table 36 displays the modes in which the serial output port will function. the output control registers give the user control of clock polarities, clock frequencies, clock types, and data format. in all modes except for the right-justified modes (msb delayed by 8, 12, or 16), the serial port accepts an arbitrary number of bits up to a limit of 24. extra bits do not cause an error, but are truncated internally. proper operation of the right-justified modes requires the lsb to align with the edge of the lrclk. the default settings of all serial port control registers correspond to 2-channel i 2 s mode. lrclk_out0 and bclk_out0 are clocks for serial output ports 0 to 7, and lrclk_out1 and bclk_out1 clock ports 8 to 15. all registers default to being set as all 0s. all register settings apply to both master and slave modes unless otherwise noted. table 37 shows the proper configurations for standard audio data formats. table 36. serial output port ma ster/slave mode capabilities f s 2-channel modes (i 2 s, left-justified, right-justified) 8-channel tdm 16-channel tdm 48 khz master and slave master and slave master and slave 96 khz master and slave master and slave slave only 192 khz master and slave slave only slave only table 37. data format configurations format lrclk polarity lrclk ty pe bclk polarity msb position i 2 s (figure 23) frame begins on falling edge clock data changes on falling edge delayed from lrclk edge by one bclk left-justified (figure 24) frame begins on rising edge clock data changes on falling edge aligned with lrclk edge right-justified (figure 25) frame begins on rising edge clock data changes on falling edge delaye d from lrclk edge by 8, 12, or 16 bclks tdm with clock (figure 26) frame begins on falling edge clock data changes on falling edge delayed from start of word clock by one bclk tdm with pulse (figure 27) frame begins on rising edge pulse data changes on falling edge delaye d from start of word clock by one bclk
ad1940/ad1941 rev. a | page 29 of 36 table 38. serial output control register 1 (channels 0C7) (2644) bits function 15 dither enable 0 = diabled 1 = enabled 14 internally link tdm streams into single, 16-channel stream 0 = indepenent 1 = linked 13 lrclk polarity 0 = frame begins on falling edge 1 = frame begins on rising edge 12 bclk polarity 0 = data changes on falling edge 1 = data changes on rising edge 11 master/slave 0 = slave 1 = master 10:9 bclk frequency (master mode only) 00 = core_clock/24 01 = core_clock/12 10 = core_clock/6 11 = core_clock/3 8:7 frame sync frequency (master mode only) 00 = core_clock/1536 01 = core_clock/768 10 = core_clock/384 6 frame sync type 0 = lrclk 1 = pulse 5 serial output/tdm mode control 0 = 8 serial data outputs 1 = enable tdm (8- or 16-channel) on sdata_out0 4:2 msb position 000 = delay by 1 001 = delay by 0 010 = delay by 8 011 = delay by 12 100 = delay by 16 101 reserved 111 reserved 1:0 output word length, channels 0C7 00 = 24 bits 01 = 20 bits 10 = 16 bits 11 = reserved table 39. serial output control register 2 (channels 8C15) (2645) bits function 15 dither enable 0 = disabled 1 = enabled 14 data capture serial out enable (uses sdata_out7) 0 = disable 1 = enable 13 lrclk polarity 0 = frame begins on falling edge 1 = frame begins on rising edge 12 bclk polarity 0 = data changes on falling edge 1 = data changes on rising edge 11 master/slave 0 = slave 1 = master 10:9 bclk frequency (master mode only) 00 = core_clock/24 01 = core_clock/12 10 = core_clock/6 11 = core_clock/3 8:7 frame sync frequency (master mode only) 00 = core_clock/1536 01 = core_clock/768 10 = core_clock/384 6 frame sync type 0 = lrclk 1 = pulse 5 serial output/tdm mode control 0 = 8 serial data outputs 1 = enable tdm on sdata_out4 (8-channel) or sdata_out0 (16-channel) 4:2 msb position 000 = delay by 1 001 = delay by 0 010 = delay by 8 011 = delay by 12 100 = delay by 16 101 reserved 111 reserved 1:0 output word length, channels 8C15 00 = 24 bits 01 = 20 bits 10 = 16 bits 11 = reserved
ad1940/ad1941 rev. a | page 30 of 36 serial output control registers dither enable (bit 15) setting this bit to 1 enables dither on the appropriate channels. internally link tdm streams into single 16-channel stream (bit 14, serial output control register 1) when this bit is set to 1, the tdm output stream is output in a single 16-channel stream on sdata_out0. when set to 0, tdm data is output on two independent 8-channel streams on pins sdata_out0 and sdata_out4. data capture serial out enable (bit 14, serial output control register 2) when set to 1, sdata_out7 is set as the output of the data capture digital output registers (2640C2641). see the data capture registers section for a full explanation of this mode. lrclk polarity (bit 13) when set to 0, the left channel data is clocked when lrclk is low, and the right data clocked when lrclk is high. when set to 1, this is reversed. bclk polarity (bit 12) this bit controls on which edge of the bit clock the output data is clocked. data changes on the falling edge of bclk_outx when this bit is set to 0, and on the rising edge when this bit is set at 1. master/slave (bit 11) this bit sets whether the output port is a clock master or slave. the default setting is slave; on power-up, pins bclk_outx and lrclk_outx are set as inputs until this bit is set to 1, at which time they become clock outputs. bclk frequency (bits 10:9) when the output port is being used as a clock master, these bits set the frequency of the output bit clock, which is divided down from the internal 73.728 mhz core clock. frame sync frequency (bits 8:7) when the output port is used as a clock master, these bits set the frequency of the output word clock on the lrclk_outx pins, which is divided down from the internal 73.728 mhz core clock. frame sync type (bit 6) this bit sets the type of signal on the lrclk_outx pins. when set to 0, the signal is a word clock with a 50% duty cycle; when set to 1, the signal is a pulse with a duration of one bit clock at the beginning of the data frame. serial output/tdm mode control (bit 5) setting this bit to 1 changes the output port from multiple serial outputs to a single tdm output stream on the appropriate sdata_outx pin. this bit must be set in both serial output control registers to enable 16-channel tdm on sdata_out0. msb position (bits 4:2) these three bits set the position of the msb of data with respect to the lrclk edge. the data outputs of the ad1940/ad1941 are always msb first. output word length (bits 1:0) these bits set the word length of the output data-word. all bits following the lsb are set to 0. table 40. serial input control register (2646) register bits function 5 8-/16-channel tdm input 0 = dual 8-channel tdm 1 = 16-channel tdm input 4 lrclk polarity 0 = frame begins on falling edge 1 = frame begins on rising edge 3 bclk polarity 0 = data changes on falling edge 1 = data changes on rising edge 2:0 serial input mode 000 = i 2 s 001 = left-justified 010 = tdm 011 = right-justified, 24-bit 100 = right-justified, 20-bit 101 = right-justified, 18-bit 110 = right-justified, 16-bit serial input control register 8-/16-channel tdm input (bit 5) setting this bit to 0 puts the ad1940/ad1941 into dual 8-channel tdm input mode, with the two streams coming in on sdata_in2/tdm_in1 and sdata_in3/tdm_in0. channels 0 to 7 are input on tdm_in0 and channels 8 to 15 come in on tdm_in1. setting this bit to 1 puts the part in 16-channel tdm input mode, input on tdm_in1. lrclk polarity (bit 4) when set to 0, the left channel data on the sdata_inx pins is clocked when lrclk_in is low; the right input data clocked when lrclk_in is high. when set to 1, this is reversed. in tdm mode, when this bit is set to 0, data is clocked in starting with the next appropriate bclk edge (set in bit 3 of this register) that follows a falling edge on the lrclk_in pin. when set to 1 and running in tdm mode, the input data is valid on the bclk edge following a rising edge on the word clock (lrclk_in). the serial input port can also operate with a pulse input signal, rather than a clock. in this case, the first edge of the pulse is used by the ad1940/ad1941 to start the data frame. when this polarity bit is set to 0, a low pulse should be used, and a high pulse should be used when the bit it set to 1.
ad1940/ad1941 rev. a | page 31 of 36 bclk polarity (bit 3) this b i t con t r o ls o n w h i c h e d ge o f t h e b i t clo c k t h e i n p u t da t a c h a n g e s, an d on whic h edg e i t is c l o c k e d . da ta cha n g e s o n t h e fal l in g edg e o f b c lk_in w h en this b i t is s e t to 0, a n d on the r i sin g edg e w h en this b i t is s e t a t 1. serial inp u t m o de ( b its 2: 0) t h ese tw o b i t s co n t r o l th e da t a f o rm a t th a t t h e in p u t po r t exp e c t s t o r e ceiv e . b i ts 3 an d 4 o f this co n t r o l r e g i s t er o v er r i de th e s e t t in gs in bi ts 2:0, s o al l f o ur b i ts m u s t be cha n g e d t o g e th er fo r p r o p er o p era t io n in s o me m o de s. th e clo c k dia g ra ms fo r th es e m o des a r e s h o w n in f i gure 23, f i gur e 24, a nd f i gur e 25. n o t e tha t f o r le ft -j us ti f i ed a n d ri gh t- j u s t i f i e d m o d e s th e l r c l k p o la r i ty is hig h , th en lo w , whic h is o p p o si t e f r o m the def a u l t se t t in g o f b i t 4 . w h en t h es e b i ts a r e s e t t o accep t a td m in p u t, th e ad1940 / ad1941 s da t a sta r ts a f t e r the e d g e def i n e d b y b i t 4. f i gur e 26 sh o w s an 8-channel t d m st r e am wi t h a hig h - t o-lo w t r ig ger e d lr clk an d da t a cha n g i n g o n t h e fal l i n g e d ge o f t h e b c l k . th e ad1940/ad19 41 exp e c t s the ms b o f eac h da ta s l o t de l a yed b y o n e b c l k f r o m t h e b e g i nnin g o f t h e s l o t , j u s t l i k e in t h e s t er e o i 2 s f o r m a t . i n 8-c h a n n e l td m m o de , cha n ne ls 0 t o 3 a r e in t h e f i rst h a l f of t h e f r ame, a n d c h an nel s 4 to 7 are i n t h e s e c o n d ha lf. w h e n i n 1 6 -cha n n el td m m o d e , t h e f i rst ha lf-f ra m e h o ld s cha n n e ls 0 t o 7, a nd t h e s e cond half-f ra m e h o l d s cha n n e ls 8 to 15. f i gur e 26 s h o w s j u s t on e o f th e f o r m a t s in whic h t h e ad1940/ad19 41 ca n op era t e in td m mo de . p l eas e r e f e r t o th e s e ri al d a t a i n p u t / ou t p u t p o r t s secti o n f o r a m o r e c o m p l e t e des c r i p t io n o f t h e m o des o f o p er a t io n. f i gur e 27 sh o w s an exa m ple o f a td m s t r e a m r u nnin g wi t h a p u ls e w o r d clo c k, whic h w o u l d be us ed t o in t e r f ac e t o ad i co decs in t h eir a u xi li a r y m o de . t o w o rk in t h is m o d e o n e i t h er t h e i n p u t o r o u t p u t s e r i al p o r t s, th e ad1940 /ad1941 sh o u l d b e s e t t o f r a m e b e g i n n i ng on t h e r i s i ng e d ge of l r c l k , d a t a ch ang i ng o n t h e f a l l i n g e d ge of b c l k , a n d m s b p o s i t i on d e l a y e d f r om t h e st ar t of t h e word cl o c k by one b c l k . t a b l e 37 expla i ns t h e clo c k s e t t i n gs fo r e a ch o f t h es e fo r m a t s. lrclk bclk s dat a msb left channel lsb msb right channel lsb 1 /f s 04607-0-023 f i g u re 23. i 2 s m o de 16 to 24 bi ts p e r cha n nel lrclk bclk sdata left channel msb lsb msb right channel lsb 1 /f s 04607-0-024 f i gure 2 4 . l e f t - j usti fi ed m o de 16 to 24 bi ts p e r c h a n nel lrclk bclk sdata left channel msb lsb msb right channel lsb 1 /f s 04607-0-025 f i gure 2 5 . r i ght- j u sti f i e d mo d e 16 to 24 bi ts p e r cha n nel
ad1940/ad1941 rev. a | page 32 of 36 lrcl k bclk data slot 0 slot 1 slot 4 slot 5 32 bclks msb msb?1 msb?2 256 bclks slot 2 slot 3 slot 6 slot 7 lrclk bclk data 04607-0-012 f i g u re 26. 8- cha n n e l t d m m o d e lrclk slot 0 slot 1 slot 2 slot 3 slot 4 slot 5 slot 6 slot 7 ch 0 bclk sdat a msb tdm 8th ch 32 bclks msb tdm 04607-0-022 f i gure 27. tdm m o de with p u lse w o r d clo c k
ad1940/ad1941 rev. a | page 33 of 36 initialization power-up sequence the ad1940/ad1941 ha v e a b u il t-in p o w e r - u p s e q u en ce tha t ini t ia li zes t h e con t e n ts o f a l l in t e r n a l r a ms. d u rin g t h is t i me , t h e con t e n ts o f t h e i n t e r n al p r og ra m b o o t r o m a r e co p i e d t o t h e i n te r n a l pro g r a m r a m me mor y an d t h e p a r a me te r r a m (al l 0s) is f i l l ed wi t h val u es f r o m i t s as s o cia t e d bo o t r o m. the d e f a u l t b o o t rom pro g r a m s i mp l y c o pi e s t h e s e r i a l i n p u t s to t h e s e r i al o u t p uts w i t h n o p r o c e s sin g . the da t a m e m o r i es a r e also c l ea r e d d u ri n g th i s tim e . t h e b o ot s e qu e n c e , w h i c h st ar t s on t h e r i s i ng e d ge of t h e res e tb p i n, lasts f o r 8,192 c y c l es o f th e sig n al o n the m c lk p i n a t st ar t-u p . a ssu ming e v e n t h e sl owe s t p o ss ibl e s i g n a l on this p i n, a 64 f s c l o c k, the b o o t s e q u en ce s t il l co m p let e s bef o r e t h e pll lo cks t o t h e i n p u t clo c k. sin c e t h e b o o t s e q u e n ce r e q u ir es a s t ab le mas t er clo c k, t h e us er sh o u ld a v o i d wr i t in g t o o r r e adin g f r o m th e r e g i st ers un til th e mcl k in p u t sig n al has s e t t le d an d t h e p ll has lo ck e d . the p ll t a k e s a p p r o x ima t e l y 3 ms to l o ck . c o m i ng out of re s e t , t h e cl o c k mo d e i s i m me - dia t e l y s e t b y t h e p ll_c tr l0, p ll_c trl1, and p ll_ ctrl2 pi ns . r e s e t i s s y nc he d to t h e f a l l i ng e d g e of t h e i n te r n a l mc l k . the p o w e r - u p defa u l t sig n al p r o c es sin g f l o w in t h e ad1940 / ad1941 sim p l y tak e s t h e eig h t in p u ts an d co p i es th es e sig n als to t h e 1 6 d i g i t a l output s , a s s h ow n i n fi g u re 2 8 . 04607-0-004 sdata_in0 sdata_in1 sdata_in2 sdata_in3 sdata_out0 sdata_out1 sdata_out2 sdata_out3 sdata_out4 sdata_out5 sdata_out6 sdata_out7 f i gure 2 8 . d e f a u l t p r o g r a m s i gnal f l o w setting master clock/pll mode the ad1940/ad1941 s m c l k in p u t f eeds a pl l, whic h g e n- era t es t h e 1536 f s cl o c k to r u n t h e d s p c o re. i n nor m a l o p era t ion, t h e i n p u t t o mclk m u s t b e on e o f t h e fol l o w in g; 64 f s , 256 f s , 384 f s , o r 512 f s , w h er e f s is t h e i n p u t s a m p ling ra te . th e m o de is s e t on p ll_ ctrl0, p ll_c trl1, a nd p l l _ ctrl 2, acco r d in g t o t a b l e 41. i f th e ad1940/ad19 41 a r e s e t t o r e cei v e do ub le -ra t e si g n als (b y r e d u cin g t h e n u m b er of pro g r a m ste p s / s a m p l e by a f a c t or of 2 u s i n g t h e c o re c o n t ro l r e g i s t er), t h en t h e mas t er clo c k f r e q uen c ies m u s t b e ei t h er 32 f s , 128 f s , 192 f s , o r 256 f s . i f th e ad1940/ad1941 a r e s e t t o r e cei v e q u ad r a te sig n als (b y r e d u cin g t h e n u m b er o f p r ogra m ste p s / s a m p l e by a f a c t or of 4 u s i n g t h e c o re c o n t ro l re g i ste r ) , th en th e m a st e r c l oc k f r eq ue n c ie s m u s t be 16 f s , 64 f s , 96 f s , o r 128 f s . o n p o w e r - u p , a c l o c k s i g n a l m u s t b e p r e s e n t o n m c lk s o tha t t h e ad1940 /ad1941 ca n com p l e t e t h eir ini t ia li z a t i o n r o u t ine . t h e pll ca n a l s o r u n in b y p a ss mo de , w h er e t h e clo c k p r es en t on mclk is fe d dir e c t l y t o t h e ds p co r e , a l t h oug h t h is s e t t in g is n o t r e com m e n de d fo r nor m a l op e r a t i o n . table 41. pl l modes mclk i n p u t p l l _ c t r l 2 p l l _ c t r l 1 p l l _ c t r l 0 64 f s 0 0 0 256 f s 0 1 0 384 f s x 1 x 1 1 512 f s 1 0 0 b y p a s s 1 1 0 1 x = d o nt care the clo c k m o de sh o u ld n o t b e cha n ge d w i t h o u t a l s o r e s e t t in g th e ad1940 /ad1941. i f th e mo de is c h a n ged o n the f l y , a c l ic k o r p o p ma y r e s u l t o n t h e o u t p u t s. the s t a t e o f t h e pll_c trlx p i n s sh o u ld be cha n g e d while res e tb is he ld l o w . voltage r e gulator the ad1940/ad1941 in c l ude a n o n -bo a r d v o l t a g e r e gu l a t o r t h a t al lo ws t h e chi p t o b e us e d i n sys t ems w h ere a 2.5 v s u p p l y is n o t a v a i la b l e , b u t 3.3 v o r 5 v is. th e onl y ext e r n al co m p o n en t s n e ed ed f o r th i s a r e a p n p tra n s i s t o r s u c h a s a zx5 t 953g, a sin g le ca p a c i t o r , and a sin g le r e sist o r . th e r e co mme n d e d desig n fo r t h e vol t a g e r e gu l a t o r is s h own i n f i gur e 29. th e 1 0 f a n d 100 nf ca p a ci t o rs sh o w n in this sc h e ma ti c a r e r e co mm en d e d f o r b y pa s s i n g, b u t a r e n o t n e ce ss a r y fo r o p era t ion. h e r e , vdd is t h e ma i n sy st e m v o l t a g e (3.3 v o r 5 v) a nd sh o u ld be conn ec t e d t o v s up p l y . 2.5 v is ge ne r a te d a t t h e t r ans i stor s c o l l e c tor , w h i c h i s c o nne c te d to t h e vd d p i n s , pll _ vd d and v s e n s e . th e r e fer e n c e v o l t a g e on vref is 1.15 v a nd is g e n e ra t e d b y th e r e gu la to r . a 1 nf ca p a c i to r sh o u ld b e co n n e c te d b e tw e e n t h is p i n an d g r o u n d . v d r i v e i s co nn ect e d t o th e base o f th e pn p tra n si s t o r . a 1 k ? r e s i s t o r s h o u l d be co nn ect e d b e t w een v d r i ve a n d v s u p p l y . 10 f 10 f 100nf 100nf 1nf 1k ? ad1940/ad1941 dvdd zx5t953g 04607-0-009 vsu pply vr ef v driv e vsen se vd d + + pll_vdd f i gure 2 9 . v o l t a g e regul a to r d e si gn
ad1940/ad1941 rev. a | page 34 of 36 there are two specifications that should be taken into consideration when choosing a regulator transistor. first, the transistors current amplification factor (h fe or beta) should be at least 100. second, the transistors collector needs to be able to dissipate the heat generated when regulating from 3.3 v or 5 v to 2.5 v. the maximum current draw of the ad1940/ad1941 is 163 ma (maximum digital current + maximum pll current). the equations for the minimum power dissipation specs for both 3.3 v and 5 v follow: (5 v C 2.5 v) 163 ma = 480 mw (3.3 v C 2.5 v) 163 ma = 130 mw if the regulator is not used in the design, vsupply, vref, vdrive, and vsense can be tied to ground.
ad1940/ad1941 rev. a | page 35 of 36 outline dimensions compliant to jedec standards ms-026bbc top view (pins down) 1 12 13 25 24 36 37 48 0.27 0.22 0.17 0.50 bsc lead pitch 7.00 bsc sq 1.60 max 0.75 0.60 0.45 view a 9.00 bsc sq pin 1 0.20 0.09 1.45 1.40 1.35 0.08 max coplanarity view a rotated 90 ccw seating plane 7 3. 5 0 0.15 0.05 f i g u re 30. 4 8 -l ead l o w-p r of il e q u ad flat p a ck ag e [l qfp ] (st - 48) di me nsio ns sho w n i n mi ll im e t e r s ordering guide model temperature r a nge package descri ption package option AD1940YST C40c to +105c 48-lead lqfp st-48 AD1940YSTrl C40c to +105c 48-lead lqfp st-48 in 13 ree l AD1940YSTz 1 C40c to +105c 48-lead lqfp st-48 AD1940YSTzrl 1 C40c to +105c 48-lead lqfp st-48 in 13 ree l ad1941ystz 1 C40c to +105c 48-lead lqfp st-48 ad1941ystzrl 1 C40c to +105c 48-lead lqfp st-48 in 13 ree l e v a l - a d 1 9 4 0 e b e v a l u a t i o n boar d e v a l - a d 1 9 4 1 e b e v a l u a t i o n boar d 1 z = pb-free part.
ad1940/ad1941 rev. a | page 36 of 36 notes pur c has e of licens ed i 2 c c o m p o n en ts o f analog d e vic e s o r o n e o f i t s s u b l ic en s e d a s s o c i a t e d c o m p a n ies c o n v e y s a lic e n s e f o r t h e p u r c ha s e r un d e r t h e p h i li ps i 2 c p a t e n t r i gh ts t o use t h es e c o m p o n en t s in a n i 2 c sys t em, p r o v id e d t h a t t h e sys t em c o nf o r m s t o t h e i 2 c s t a n da r d s p e c ifica t io n a s defin e d b y p h i l i p s. ? 2005 a n al og d e vic e s , inc . a ll righ t s r e ser v ed . t r a d em arks and r e gist er e d tr adem ar ks ar e t h e proper t y of t h eir respec tiv e o w ners . d04607-0-4/05( a )


▲Up To Search▲   

 
Price & Availability of AD1940YST

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X